-2

次のコードは、私が構築しているphpファイルにあります。製品名やその他の情報を HTML div に表示する動的フォームを作成しています。さて、私はおそらく比較的単純なものだと思う問題に直面しています。最初はしようとしてecho $name;いたのですが、空っぽになってきていたので、テストエコーを入れて、予想とは異なる場所にエコーしているかどうかを確認しましたが、いいえ、テストは正しく行われました. それで、私はavar_dump($name);を実行しましたが、NULLとして表示されました。エコーする前に行で定義しているのに、なぜ NULL になるのですか?

<?php
$productquery = mysqli_query($connection, 'SELECT * FROM products WHERE PID="$productID"');
$productrow = mysqli_fetch_assoc($productquery);
//$dbIDlogin = $row5['ID'];         
?>

<?php 
$name = $productrow['Productname'];
echo var_dump($name);
echo "<br>Why?";
?>

アップデート:

vardump($productrow['Productname']) は null です。

vardumping$productqueryはこれを与えます:

object(mysqli_result)#2 (5) { ["current_field"]=> int(0) ["field_count"]=> int(18) ["lengths"]=> NULL ["num_rows"]=> int(0) ["type"]=> int(0) }

2回目の更新:

どうやら $productID は NULL でした。だから私はそれを 4 に設定しようとしています。私は今これを持っていますが、まだ動作しません。4 をシングルとダブルの引用符で囲んでみましたが、それは問題ではありません。しかし、定義した後の行はまだnullであると言われています。

$productID=4;
$productquery = mysqli_query($connection, 'SELECT * FROM products WHERE PID="$productID"');
$productrow = mysqli_fetch_assoc($productquery);
4

3 に答える 3

1

$productrow['製品名'] は null です。

$productrow の vardump/print_r ステートメントを使用して、クエリが実際に何を返すかを把握します。

于 2013-08-09T19:38:23.847 に答える
1

$productID には有効な番号が含まれていますか?

結果を反復処理する必要があります。結果は 1 つしかなく、反復する必要はないと想定しています。

また、クエリで見つかった行数を表示してみてください。

$num_rows = mysql_num_rows($productquery);
于 2013-08-09T19:40:30.153 に答える