1

そのため、phpを使用してmysqlデータベースを更新しています。以下はUPDATEの終わりです。代わりに文字列がある場合はecho $row[embedcode]");正常に機能し、このエコーはページにデータを設定して正しい値を取得しますが、このUPDATE内では機能しません。

...WHERE `embedcode` = echo $row[embedcode]");

「. .」を使ってみました その周りに独自のphpタグを追加しますが、何をする必要があるのか​​ わかりません。

4

6 に答える 6

6

これを使用するだけです:

...WHERE `embedcode` = " . $row[embedcode]);

の必要はありませんecho

補足として、SQL インジェクションやその他の悪いことを防ぐために、MySQL クエリに入る文字列をパラメーター化するか、少なくともサニタイズする必要があります。

于 2013-05-09T12:59:41.257 に答える
1
" ... WHERE `embedcode=` '" .$row[embedcode]. "';");
于 2013-05-09T13:06:00.757 に答える
0

たとえば...

("UPDATE `tblProfile` SET `profilename` = 'abc' WHERE `embedcode` = '".$row['embedcode']."'");
于 2013-05-09T13:08:45.823 に答える
0

WHERE埋め込みコード= . $row[embedcode]);は値を設定します。

SQL ステートメント内でのエコーは必要ありません。echo は、php から Web ブラウザーに何かを表示するために使用されます。

于 2013-05-09T13:00:42.063 に答える
0

エコーは使用しません。おそらく次のようにする必要があります。

...WHERE `embedcode=` . $row[embedcode]");

if$row[embedcode]が文字列である場合は、引用符で囲む必要があります。

于 2013-05-09T13:00:43.463 に答える
0

SQL インジェクションを防ぐために、PDO または MySQLi を使用している場合は、その値をパラメーターとして渡すことができます。

例えば、

$stmt = $dbConnection->prepare('...WHERE `embedcode` = :embedcode');
$stmt->execute(array(':embedcode' => $row[embedcode]));

詳しくはこちらをご覧ください。

于 2013-05-09T13:46:52.337 に答える