2012-05-13 20 views
0

PHPからデータベースから行を取得しようとしていますが、ユーザーから書籍のタイトルを取得する予定のHTMLフォームを作成し、mysql/phpを使用してDBから行を選択

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in  C:\AppServ\www\GetReview.php on line 20 

function GetReview($BookTitle) 
{ 
require'DB.php'; 
if(empty($_POST['BookTitle'])) 
    { 
     echo " You must enter a book name!"; 
     return false; 
    } 

$BookTitle = mysql_real_escape_string($BookTitle); 

$q="Select Reviews from Users_Booklist where (Book_Title like '%" .$BookTitle."%');"; 
if(!mysql_query($q,$con)) 
{ 
die("Error".mysql_error()); 
} 
else 
{ 
$row = mysql_fetch_row($q); 
?> 
<html> 
<head><title>Delete Review </title> 
</head> 
<body> 
<br> 
<form name="DeleteReview " action="DeleteReviewsFunction.php" method="post"> 
Review: <input type="text" name="Review" size="200" value="<?php echo $row[0]; ?>"/>    
<input type="submit" value="Delete Review" /> 
</form> 
</body> 
</html> 
<?php 
} 
} 
GetReview($_POST['BookTitle']) 

しかし、それは入力テキストで何とこの警告で次のフォームに私をリード:本は、その後、入力テキストでそれを投稿し、フォームのアクションは、次の関数につながります

私はさまざまなコードを検索して試しましたが、結果は同じです。エラーが???です は、誰もが、私は多くの援助するつもりはないんだけど、あなたの質問にエラーが発生している場所のようだ、と私のおかげ

+0

http://br2.php.net/manual/en/の最初の例function.mysql-fetch-row.phpは、理由を示しています –

+0

あなたのクエリ**の結果フォームを取得しようとしています** **。 mysql_query()呼び出しから返された値からフェッチする必要があります。 –

+0

古くからの新しいmysql_ *関数で新しいコードを書くのをやめてください。それらはもはや維持されず、コミュニティは[非推奨プロセス](http://goo.gl/KJveJ)を開始しました。代わりに、[準備完了声明](http://goo.gl/vn8zQ)について学び、[PDO](http://php.net/pdo)または[MySQLi](http://php.net/)を使用する必要があります。 mysqli)。あなたが決定できない場合、[この記事](http://goo.gl/3gqF9)が選択に役立ちます。あなたが覚えていれば、[こちらはPDO関連の良いチュートリアルです](http://goo.gl/vFWnC)。 – vascowhite

答えて

3
$qq = mysql_query($q,$con); 
if(!$qq) { 
// (...) 

$row = mysql_fetch_row($qq); 
+0

ありがとうございました:) –

0

...私に教えてもらえますそれを伝えることができます。

これは$row = mysql_fetch_row($q);行です。

これは、エラーレコードがmysql_fetch_row()で始まり、上記の行がmysql_fetch_row()の唯一のコードであることから分かります。

0

で$ qを変数の出力を印刷してSQLクエリを確認します。

は$ Qをエコー。

これで、MySQLクライアントから実行しようとしました。結果を収集し(存在する場合)、エラーをチェックします。

提案:あなたがしたい場合は、(特にコードの組織のために)非常に便利ですezSQLのようなツールを使用することができます

関連する問題