2016-04-02 9 views
0

何が間違っていますか?私は変数$new_msds_urlを使用したいと思います。私は見つけることができるすべてのバリエーションを試みたが、それを働かせることはできない。PHP MYSQLI 'where句'の 'www.demo'列が不明です

出力:

mysqliのエラーメッセージ: 'where句' で
不明な列 'www.demo'。
ことに実行されたクエリ:msds_table FROM SELECT msds_url WHERE msds_url = www.demo

コード:

<?php 

$new_msds_url = "www.demo"; 
$query = "SELECT msds_url FROM msds_table WHERE msds_url = $new_msds_url"; 

if(@mysqli_query($dbc, $query)){ 

    echo ' MYSQLI ERROR MESSAGE: <br>' . mysqli_error($dbc) . '.</p><p> The query being run was: ' . $query . '</p>'; 

} 

?> 

答えて

1

最初 - あなたはURLの拡張子が必要です(例えばwww.demo.html )? - 2番目にクエリの$ new_msds_urlの周りに' 'が必要です。

$query = "SELECT msds_url FROM msds_table WHERE msds_url = '$new_msds_url'"; 
+0

私はあなたが提案した変更を行ったし、これが今の私のエラーmessageMYSQLIエラーメッセージです: 。 実行されているクエリは次のとおりです。SELECT msds_url FROM msds_table WHERE msds_url = 'www.demo' – Kevin

+0

hi-yesこれは、エラーメッセージがクエリをエコーすることを前提にしています。これは、エラーが別の場所にあることを示します。私はあなたが最初の場所でクエリを取得するかどうかわからないと言わなければならない - あなたは、URLが新しいURLと一致するときに、URLを選択するようDBに依頼している。しかし、あなたはすでに新しいURLを持っていますか?したがって、newurlと一致するURLはnewurl変数と同じになります。このクエリは実際に正しいですか、dbの正しいフィールドを検索していますか? – gavgrif

+0

私はリンクライブラリを作成しています。私はリンクが既にdbに入っていたことを知りたがっています。これは機能します。 '$ stmt = mysqli_prepare($ dbc、" SELECT msds_url FROM msds_table WHERE msds_url =? "); if($ stmt){mysqli_stmt_bind_param($ stmt、 "s"、$ new_msds_url); mysqli_stmt_execute($ stmt); mysqli_stmt_bind_result($ stmt、$ stmt_result); mysqli_stmt_fetch($ stmt); if($ stmt_result){// URLは既に存在します$ url = FALSE; $ message_array [] = "URL一致"; } else {// URLは存在しません$ url = TRUE; $ message_array [] = "URLに一致しません"; } \t mysqli_stmt_close($ stmt); } '申し訳ありませんが、フォーマットする方法がわかりません。 – Kevin

関連する問題