-3

重複の可能性:
PHP: 警告: sort() は、パラメーター 1 が配列であると想定し、リソースが指定されている

次の PHP コードがありますが、このエラーが発生します。さまざまな解決策を試しましたが、うまくいかないようです。どんな助けでも大歓迎です。

<?php
INCLUDE 'functions.php' ;

$host = 'localhost';    
$id = '***';    
$pwd = '***';    
$db = '****'; 

$myconnection = connect_db($host, $id, $pwd, $db);

$SortOn = $_POST["SortOn"];    
$SortIn = $_POST["SortIn"];


$sql = "SELECT ID, DateTime, FirstName, LastName, AdditionalInformation, Category1,    Category2, Category3, Category4, Category5, Pending, Approved, Disapproved, WebsiteName, WebsiteURL FROM 'websites' ORDER BY $SortOn $SortIn";
echo "<table border=\"1\"><tr><th>ID</th><th>Date & Time</th><th>First Name</th><th>Last Name</th><th>Additional Information</th><th>Category 1</th><th>Category 2</th><th>Category 3</th><th>Category 4</th><th>Category 5</th><th>Pending</th><th>Approved</th><th>Disapproved</th><th>Website Name</th><th>Website URL</th></tr>";

$result = mysql_query($sql);            



while ( $row = mysql_fetch_array($result))            
{                
    echo "<tr>";        
    for ( $column = 0;$column < count($row);$column++)        
    {            
        echo "<td>" . $row[$column] . "</td>";        
    }        
    echo "</tr>";    


}            
echo "</table>";

?>   
4

3 に答える 3

0

この変数$resultはブール値 (おそらく、False などを返します。これは、クエリが「適切な」実行を行っていないことを示すためです) であり、彼が期待したリソースではありません。

mysql_error()したがって、原因を取得して上記のコードを修正するなどの方法を使用する必要があります。

編集 コードを見てください,order byフィールドに a がありません

于 2012-05-22T14:52:37.750 に答える
0

エラーが発生すると、mysql_queryはブール値の false を返します。したがって、クエリを修正する必要があるようです。mysql_errorを使用して、エラーの内容を把握できます。

于 2012-05-22T14:55:11.043 に答える
0

データベース接続も有効であることを確認してください。connect_db($host, $id, $pwd, $db) または die(mysql_error()) を試してください。また、他の人が提案したように、sqlステートメントでdieを使用してください。

于 2012-05-22T14:55:53.587 に答える