申し訳ありませんが、MySQLの情報をドロップダウンリストに入力しようとすると問題が発生します。この問題は、2番目のドロップダウンでアポストロフィを使用して情報を取得しようとしたときに発生します。たとえば、女性の服や男性の服などです。どんな援助も大いに感謝します。動的ドロップダウンmysqlアポストロフィの問題
エラーは次のとおりです。SQL構文にエラーがあります。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックし、正しい構文が1行目近くの 'Clothing' 'を使用するようにしてください。
ここにコードがあります。
<?php
//**************************************
// Page load dropdown results //
//**************************************
function getTierOne()
{
$catresult = mysql_query("SELECT DISTINCT category FROM categories")
or die(mysql_error());
while($tier = mysql_fetch_array($catresult))
{
echo '<option value="'.$tier['category'].'">'.$tier['category'].'</option>';
}
}
//**************************************
// First selection results //
//**************************************
if($_GET['func'] == "drop_1" && isset($_GET['func'])) {
drop_1($_GET['drop_var']);
}
function drop_1($drop_var)
{
include_once('db.php');
$result = mysql_query("SELECT DISTINCT level1 FROM categories WHERE category='$drop_var'")
or die(mysql_error());
echo '<select name="drop_2" id="drop_2">
<option value=" " disabled="disabled" selected="selected">Choose one</option>';
while($drop_2 = mysql_fetch_array($result))
{
echo '<option value="'.$drop_2['level1'].'">'.$drop_2['level1'].'</option>';
}
echo '</select>';
echo "<script type=\"text/javascript\">
$('#wait_2').hide();
$('#drop_2').change(function(){
$('#wait_2').show();
$('#result_2').hide();
$.get(\"pla2.php\", {
func: \"drop_2\",
drop_var: $('#drop_2').val()
}, function(response){
$('#result_2').fadeOut();
setTimeout(\"finishAjax_tier_three('result_2', '\"+escape(response)+\"')\", 400);
});
return false;
});
</script>";
}
//**************************************
// Second selection results //
//**************************************
if($_GET['func'] == "drop_2" && isset($_GET['func'])) {
drop_2($_GET['drop_var']);
}
function drop_2($drop_var)
{
include_once('db.php');
$bresult = mysql_query("SELECT DISTINCT level2 FROM categories WHERE level1='$drop_var'")
or die(mysql_error());
echo '<select name="drop_3" id="drop_3">
<option value=" " disabled="disabled" selected="selected">Choose one</option>';
while($drop_3 = mysql_fetch_array($bresult))
{
echo '<option value="'.$drop_3['level2'].'">'.$drop_3['level2'].'</option>';
}
echo '</select> ';
echo '<input type="submit" name="submit" value="Submit" />';
}
?>
に
"SELECT DISTINCT level2 FROM categories WHERE level1='$drop_var'"
を変更しなければならなかった、私はそれを考え出しました。私は に "WHERE LEVEL1 =カテゴリFROM DISTINCT LEVEL2をSELECT '" は "LEVEL1 = '$のdrop_varは' WHEREカテゴリFROM DISTINCT LEVEL2を選択" に変更する必要がありました。mysql_real_escape_stringの($のdrop_var)。 "'" –