2010-11-19 3 views
0

以下のクエリでは、変数を使用してレコードを更新し、DB内のデータを識別します。私は間違っているかもしれませんが、私の構文は正しいと思います。また、変数が正当な値を持つことは絶対に確信しています。なぜこのクエリは機能しませんか?SQLクエリが変数を読み取らない

UPDATE `databasename`.`".$tablename."` SET `stock` = '".$f."' WHERE `myerspark`.`item_id` ='".$g."' LIMIT 1 

ありがとうございます。トム、はい私はそれを試して、それは正常に動作します。しかし、私はスクリプトの最後に3つの変数をすべてエコーし、すべてが正当な値を表示するので、イライラします。

ハミッシュは、どのように私はこれらのエラーを表示していますか?

Jon_Darkstarは、これらの変数は、コードの前の行に割り当てられています。ここに私のコードブロック全体があります:

また、私はこれらの変数をエコーすると、それらはすべて良い値で出てきます。

+0

どのようなエラーが表示されますか?あなたはPHP変数の値をハードコーディングしようとしましたが、それは正常に実行されることを確認しましたか? – Tom

+0

うまく見えます。 MySQLからどのようなエラーが出ますか?彼らは通常かなり記述的です。 – Hamish

+0

そのクエリを変数に代入すると、このコード行の後のその変数の値は何ですか?もう1つのことは、文字列内の変数を試してみることです(変数の解析)。 – Mario

答えて

1

私は一種の混乱しSQLに属し何だ、その文字列は、など、から来ているPHPに属し、どのようなあなたは、私が見ていけないフロントと最後に二重引用符がある場合(細かいかもしれない持っています。

私はおそらく、このようにそれを記述します。「余分な安全のためにあなたがより多くのものをバッククォート(および/またはmysql_real_escapeを行う)ことができます

$sql = "UPDATE databasename.$tablename SET stock = '$f' WHERE myerspark.item_id = '$g' LIMIT 1" 
$res = mysql_query($sql, $conn)..... 

;,それはアイデアをカバー

は何ですかmyerspark?クエリとの関連性は分かりませんが、それはおそらくあなたが本当の意味ですful error、構文エラーがあるかどうか。 myersparkがtablenameからの別のテーブルの場合、ここに問題があります。おそらくあなたが持っているはずのJOINですか?

関連する問題