0

phpMyAdmin で動作し、適切に行を返すクエリがあります。

"select item_number, general_category from products where key_word_i = 'Floor looms' order by item_number"

私のphpコードでは、失敗しませんが、行を返しません:

$productlist="select item_number, general_category from products where key_word_i = 'Floor looms' order by item_number;";
$productrows = mysql_query($productlist) or die("darn it");

「key_word_i = 'looms'」だけを検索するようにクエリを変更すると、両方の場所で機能します。紛らわしいことに、私は製品データベースのローカル コピーと本番コピーを持っています。問題の元のクエリは、すべてのインスタンスの運用データベースで正しく機能します。

では、ローカル データベースの何が問題になっているのでしょうか。確かに、これがばかげたほど単純なものであることを願っています...そして、レガシーの質問についてお詫び申し上げます-私は、このクラスではまだPDOに移行していません。ありがとう!

4

2 に答える 2

2

私はそれがこれであると確信しています:

"select item_number, general_category  
from products where key_word_i = 'Floor looms' order by item_number;"  

;クエリに セミコロン ( ) がネストされていることに注意してください。

"select item_number, general_category  
   from products where key_word_i = 'Floor looms' order by item_number";

あなたが欲しいものです

于 2013-05-29T15:44:21.763 に答える
2

役に立たない'darn it'有害なものではなく、die()有用で親しみやすいものにする

$res = mysql_query($productlist) or trigger_error(mysql_error());

そのため、特定のエラーが発生したことが通知されました。

また、このコードは行を返すのではなく、特殊なタイプの変数 (mysql リソース) のみを返すことになっていることに注意してください。マニュアルページの例に示すように、リソースを反復処理する必要がある行を取得するには

それでも行が返されない場合 - 条件に一致する行がデータベースにありません

于 2013-05-29T15:43:01.447 に答える