1

エラーメッセージが表示される理由がわかりません。''と()を削除してみました。

phpmyadminでスクリプトを実行しましたが、構文の問題は$ result =( "SELECT * FROM'test_prefixCatagory' ORDER by'Cat'");にあると表示されます。

$result = ("SELECT * FROM 'test_prefixCatagory' ORDER by 'Cat'");


while($row = mysql_fetch_array($result))

$sCat = ($row['Cat']);
$sCatID = ($row['CatID']);
{
echo "<table>";
 echo "<tr valign='top'><td><b><a href='#".$sCat."'>".$sCat."</a></b><br>";
 // column 1 categories
 $result2 = ("SELECT * FROM `test_prefixSubCat` WHERE `CatID`=$sCatID");
 // sub-cats
 while($row2 = mysql_fetch_array($result2)) 
    {
  $sSub = ($row2['CatID']);
  $sSubID = ($row2['SubID']);
  echo "<dd><a href='#'>".$sSub."</a><br>";

 }

 echo "<br></td></tr>";
echo "</table>";
 }

誰かアイデアがありますか?

4

3 に答える 3

1

これを試して :

<?php
$result = mysql_query("SELECT * FROM `test_prefixCatagory ORDER by `Cat`");

while ($row = mysql_fetch_array($result)) {
$sCat = $row['Cat'];
$sCatID = $row['CatID'];
echo "<table>";
echo "<tr valign='top'><td><b><a href='#" . $sCat . "'>" . $sCat . "</a></b><br>";
// column 1 categories
$result2 = mysql_query("SELECT * FROM `test_prefixSubCat` WHERE `CatID`='".$sCatID. "'");
// sub-cats
while ($row2 = mysql_fetch_array($result2)) {
    $sSub = $row2['CatID'];
    $sSubID = $row2['SubID'];
    echo "<dd><a href='#'>" . $sSub . "</a><br>";

    }

        echo "<br></td></tr>";
        echo "</table>";
}
?>
于 2012-05-17T13:48:42.737 に答える
0
$ result =( "SELECT * FROM` test_prefixCatagory` ORDER by `Cat`");
于 2012-05-17T13:49:26.887 に答える
0

追加するだけでなくmysql_query、テーブル名とフィールド名から一重引用符を削除する必要があります。必要に応じてバックティックを使用できますが、テーブル名を一重引用符で囲むことはできません

$result = mysql_query("SELECT * FROM `test_prefixCatagory` ORDER by `Cat`");

// other query:
 $result2 = mysql_query("SELECT * FROM `test_prefixSubCat` WHERE `CatID`=$sCatID");

MySQL の問題をデバッグするときmysql_error()は、問題の説明を表示するために使用します。

于 2012-05-17T14:07:35.123 に答える