私は使用しています:
header('Location: palette/'.urlencode(str_replace(' ','_',$title)));
フォームの送信時にユーザーをリダイレクトします。上記のコードは、入力されたタイトルの%20
(スペース) をに置き換えます。_
したがって、ユーザーが入力"Great place"
して、というページに送信しようとする代わりに、送信先と呼ばれるページpalette/Great%20place
に送信しますpalette/Great_place
私の質問ですが、この手法をハイパーリンクに適用することは可能ですか?
次のループがあります。
<?php
while($row = mysql_fetch_array($result))
{
echo "<a href='palette/$row[title]'><div id='main_col_container'>";
echo "<div class='title'> $row[title]</div>";
echo "<div class='main_color' style='background: $row[color1];'></div>";
echo "<div class='main_color' style='background: $row[color2];'></div>";
echo "<div class='main_color' style='background: $row[color3];'></div>";
echo "<div class='main_color' style='background: $row[color4];'></div>";
echo "<div class='main_color' style='background: $row[color5];'></div>";
echo "</div></a>";
}
?>
もちろん、これの問題は$row[title]
、元のデータを表すことです(表示する必要がありますが、表示する必要は"Great_place"
ありません"Great place"
明確にするために:私が求めている目的のためにハイパーリンクをstr_replaceすることは可能ですか?
編集:これは私が今持っているもので、動作しています
<?php
while($row = mysql_fetch_array($result))
{
$titleurl = str_replace(' ','_',$row['title']);
echo "<a href='palette/$titleurl'><div id='main_col_container'>";
echo "<div class='title'> $row[title]</div>";
echo "<div class='main_color' style='background: $row[color1];'></div>";
echo "<div class='main_color' style='background: $row[color2];'></div>";
echo "<div class='main_color' style='background: $row[color3];'></div>";
echo "<div class='main_color' style='background: $row[color4];'></div>";
echo "<div class='main_color' style='background: $row[color5];'></div>";
echo "</div></a>";
}
?>
これは結果のための最良のテクニックですか?それとも、何らかの理由で悪い習慣と見なされますか?