<select name="direction">
<option value="<a href='1.php'>1</a>">1</option>
<option value="<a href='2.php'>2</a>">2</option>
</select>
データベースに href を挿入しようとしていますが、二重引用符が邪魔をしています。この状況で二重引用符または単一引用符を適切に使用するにはどうすればよいですか?
<select name="direction">
<option value="<a href='1.php'>1</a>">1</option>
<option value="<a href='2.php'>2</a>">2</option>
</select>
データベースに href を挿入しようとしていますが、二重引用符が邪魔をしています。この状況で二重引用符または単一引用符を適切に使用するにはどうすればよいですか?
これを試してみませんか?
<select name="direction">
<option value='<a href=1.php>1</a>'>1</option>
<option value='<a href=2.php>2</a>'>2</option>
</select>
そんなことはできません。以下のようにしてみてください:
あなたのhtmlは次のようになります。
<select name="direction" onchange="onSelect()">
<option value="1">1</option>
<option value="2">2</option>
</select>
そしてJavascriptはこのようになります -
function onSelect() {
if (document.getElementById("direction").value == "1"){
window.location.href = "1.php";
}
elseif (document.getElementById("direction").value == "2"){
window.location.href = "2.php";
}
}
データベースに挿入する前に、html をエスケープする必要があります。addslashes(string $str)
HTML コンテンツを含む値をエスケープするために使用できます。
サーバー側で
$myvalue = "<a href='1.php'>1</a>"; // value from selected option
$escaped_myvalue = addslashes($myvalue); // $myvalye becomes "<a href=/'1.php/'>1</a>"
inser_into_table($escaped_myvalue);