2011-08-15 9 views
0

私はいくつかのデータをmySQLから表示しようとしていますが、dbの詳細は正しいものですが、これを取得します。私のコードでmysql_fetch_arrayの警告が出るエラーは何ですか?

*警告:は、mysql_fetch_array():指定された引数は、有効なMySQLの結果リソースではありません*

以下の私のコードでエラーとは何ですか?

<?php 

$con = mysql_connect("localhost"," "," "); 
mysql_select_db(" ", $con); 
mysql_query('set names utf8'); 

$query = "SELECT * FROM products WHERE id = '13' LIMIT 1"; 
$row = mysql_fetch_array(mysql_query($query)); 
echo $row['name']; 

?> 

UPDATE

私はそれはタイプミスだった私のエラーを検出しました。あなたがまだメモ帳を使用している場合、これはあなたが得るものです...

+0

あなたスペルミスの 'LIMIT' –

+4

ったくも参照してください。下降酒宴...すべての正しい答えを嫌う匿名の臆病者は、一歩前進し自分自身を説明してくれるだろうか? –

+0

私はすべての答えをupvoted。 – EnexoOnoma

答えて

1

$queryFALSEになります。入力したクエリは無効です。 mysql_queryからの戻り値は、クエリをコンパイルまたは実行する際に何らかのエラーが発生したときにFALSEとなります。

LIMTからLIMITに変更してもう一度お試しください。

0

シンプルタイプミス:LIMTLIMIT

1

間違ったスペルでなければなりません...

$query = "SELECT * FROM products WHERE id = '13' LIMT 1"; 

は、あなたがどこかのエラーを持っている

$query = "SELECT * FROM products WHERE id = '13' LIMIT 1"; 
1

でなければなりません。試してみてください:

$con = mysql_connect(...) or die(mysql_error()); 

mysql_select_db(...) or die(mysql_error()); 

$res = mysql_query(...) or die(mysql_error()); 
$row = mysql_fetch_array($res); 
1

あなたがタイプミス、LIMT持っている - エラーに関する情報を取得するために取り扱い> LIMIT

1

使用エラーを。メッセージには、構文エラー(LIMITの代わりにLIMT)があることが表示されます。あなたがライブサイトに表示される取得メッセージを避けることができるようにtrigger_error()代わりにdie()の使用がある

$query = "SELECT * FROM products WHERE id = '13' LIMT 1"; 

if (!$query) trigger_error("mySQL Error: ".mysql_error(), E_USER_ERROR); 

最小限例。それ以外の場合は、die()も問題ありません。

Reference: What is a perfect code sample using the mysql extension?

+0

参考になっていただきありがとうございます。初心者としてはより良いコードを書くのに役立ちます。 – EnexoOnoma

関連する問題