0

mysql と PHP を使用してデータベースから値を取得しようとしています。問題は次のとおりです: +++ 私のテーブル フィールド (product_model_name) は (;) で構成されています。

mysql_real_escape_string() を使用して対処しようとしましたが、成功しませんでした。私のコードは次のとおりです。

$range="Crystal;Uni"; 
$test=mysql_real_escape_string($range); 
$sql="select product_model_image from product_models where product_model_name=".$test;
$res= mysql_query($sql) or die (mysql_error());
  while($row = mysql_fetch_array($res))
 { 
 echo $row['product_model_image '];
 }

誰かが私が間違いを犯している場所を教えてもらえますか??

4

2 に答える 2

0

試す

 $sql="select product_model_image from product_models where product_model_name= '{$test}'";

代わりにpdoまたはも使用しますmysqlimysql_*

ここに良いPDOチュートリアルがあります

于 2012-10-18T16:27:56.790 に答える
0

クエリで文字列を引用符で囲みます。

$sql="select product_model_image from product_models where product_model_name='".$test."'";

必須の補足事項:mysql_*ライブラリは段階的に廃止されるため、新しいコードをPDOMySQLiなどの別のライブラリに記述する必要があります。とにかく、これらのライブラリには他にも多くの利点があります。たとえば、現在行っているようにエスケープするよりも安全なパラメーター化されたクエリなどです。

于 2012-10-18T16:28:23.323 に答える