-2

以下のコードは機能していません

$ID=2;
mysql_connect($localhost,$username,$password);
mysql_select_db(productlist) or die( "Unable to select database");
$query='SELECT * FROM HolisticSerums where ProductID =$ID' ;
$result=mysql_query($query);
$array = mysql_fetch_assoc($result);
echo $array['Size'];
mysql_close();

しかし、 $ID の代わりに 2 を使用すると動作します

   //$ID=2;
    mysql_connect($localhost,$username,$password);
    mysql_select_db(productlist) or die( "Unable to select database");
    $query='SELECT * FROM HolisticSerums where ProductID =2' ;
    $result=mysql_query($query);
    $array = mysql_fetch_assoc($result);
    echo $array['Size'];
    mysql_close();

まず、PHP の整数をデータベースの int に型キャストする方法を教えてください。最初のケースの問題は何ですか.. ?? データベースの ProductID 列は INT です

4

3 に答える 3

1

PHP 変数は一重引用符内で補間されないため

$query='SELECT * FROM HolisticSerums where ProductID =$ID' ;  // $ID Should be inside double quotes or outside all


$query="SELECT * FROM HolisticSerums where ProductID =".$ID ;
于 2013-10-03T17:11:24.840 に答える
1

2つのオプションでSQLクエリを使用する必要があります

$query="SELECT * FROM HolisticSerums where ProductID =$ID";
       ^                                                 ^

また

$query="SELECT * FROM HolisticSerums where ProductID =". $ID;
于 2013-10-03T17:12:03.653 に答える
0
$query='SELECT * FROM HolisticSerums where ProductID =$ID' ;

次のようにする必要があります。

$query="SELECT * FROM HolisticSerums where ProductID =$ID" ;

'-string は変数を解析しないため。

于 2013-10-03T17:11:12.963 に答える