mysql_fetch_assoc を使用しているときにエラーが発生しました。これが問題だと思われます。
<?php
$buildingNames = $_POST['buildingName'];
$roomId = $_POST['roomId'];
$sql = mysql_query("SELECT *
FROM forestcourt
WHERE buildingName=$buildingNames AND
id=$roomId");
$id2 = 'id';
$buildingName = 'buildingName';
$subBuildings = 'subBuildings';
$imagePath = 'imagePath';
$description = 'description';
$rows2 = mysql_fetch_assoc($sql);
echo 'Name: ' . $rows2[$buildingName] . '<br/>' . 'Room Number: ' . $rows2[$id2]
. '<br/>' . 'Sub Buildings: ' . $rows2[$subBuildings] . '<br/>'
. 'Description: ' . $rows2[$description] . '<br/>' . 'Location: '
. '<img src="../' . $rows2[$imagePath] . '"/>' . '<br/><br/>';
?>
上記のコードは、このページの前のページからフォーム データを取得するために使用しているものです。
<Form name ="form1" Method ="POST" Action ="result.php">
Building Name: <INPUT TYPE = "TEXT" Name ="buildingName">
Room Number: <INPUT TYPE = "TEXT" Name ="roomId">
<INPUT TYPE = "Submit" Name = "Submit" VALUE = "Go">
</FORM>
このサイトの目的は、フォームから $_POST を使用し、それを FORM ACTION 属性を使用して results.php ページに送信することです。
ただし、実行すると、次のようなエラーが表示されます。
警告: mysql_fetch_assoc(): 指定された引数は、52 行目の /websites/123reg/LinuxPackage23/ed/ge/_g/xxx.co.uk/public_html/testing/result.php の有効な MySQL 結果リソースではありません
52行目は;
$rows2 = mysql_fetch_assoc($sql);
これは;
$sql = mysql_query("SELECT *
FROM forestcourt
WHERE buildingName=$buildingNames AND
id=$roomId");
SELECT ステートメントに何か問題があると思いますか?
私はSQLにかなり慣れていないので、SQLに問題はありません。
データベースは接続されており、テーブルから結果を取得します。フィールドの名前も正しいです。
誰かが何かを指摘したり助けたりできれば、それは素晴らしいことです。