次のコードは、私が構築している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 です。
vardump
ing$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);