2012-03-03 16 views
2

私はこのような状況があり、なぜ動作していないのか分かりません。私はそれが簡単だと賭けるが、私は解決策を見つけることができない。mysql_queryが他の関数から返されました。

これが最初のファイルである:

$result = query("SELECT name FROM table WHERE something=1 LIMIT 1"); 
$row = mysql_fetch_row($result); 
echo $row[0]; 

これは2番目のファイルからのクエリ機能である:私が得る

function query($query){ 
    return mysql_query($query) or die (mysql_error()); 
} 

エラーは次のとおりです。ライン

$row = mysql_fetch_row($result); 
@

mysql_fetch_row() expects parameter 1 to be resource, boolean given 

です。

ので、非常に簡単、なぜこれは次のように動作していない、と私は

function query($query){ 

    $result = mysql_query($query); 
    if ($result === FALSE){ 
     die(mysql_error()); 
    } 
    return $result; 
} 
+0

どちらの場合でもvar_dump($ result)を取得するとどうなりますか? – MyStream

+0

はい、彼らには変数がありましたが、渡した後に$ queryをエコーし​​てくれました。何か他の問題があった、私はなぜ、どのように分かっていないが、私はそれを解決しました。 – 10robinho

+1

F .... F .... S .. –

答えて

2

変更query機能付き

$result = query("SELECT name FROM table WHERE something=1 LIMIT 1"); 

を交換する際に取り組んでいます私は最初にプログラミングを始めたときにこのエラーをたくさん覚えていました。データベースの接続が初期化されていないか、間違ったバージョンのmysql/sql/mysqliを呼び出していたために、これを取得する最も一般的な理由があります。それとは別に、クエリーですべてのスペルが正しいことを確認することが重要です。

私がテストするべきことの1つは、実際の値のサンプルセットを使用してクエリを取得し、phpmyadminで実行して成功したかどうかを確認することです。その場合は、適切なdb接続が不足している可能性が高いです。

0

$result = mysql_query("SELECT name FROM table WHERE something=1 LIMIT 1"); 
+0

さて、私はそれをすべて終わらせました、私は初心者ではない、それは私を混乱させる非常に珍しい間違いでした。 – 10robinho

関連する問題