テーブルの(セッションID)行の特定の値が別の変数と一致する場合にのみ、テーブルにデータを挿入したいと思います。私はINSERT文をまとめるのに苦労しています。私が取っているアプローチ:条件を満たすテーブル内のすべての行を検索し(retailer = $ retailer)、変数オプションをsessionidテーブルに入力する行を反復処理します。制限があるときにPHPを使用してmysqlテーブルに値を入力するにはどうすればよいですか?
$retailer = $_GET['retailer'];
$options = $_GET['options'];
$session = session_id();
//mysql connection stuff goes here
$query = "
SELECT *
FROM `sessionid`
WHERE `retailer` = '$retailer'
";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($result)) {
mysql_query("INSERT INTO sessionid (options) VALUES('$options')");
}
これは正しいですか?ありがとう!
Zend Frameworkを使用してDBクエリを抽象化するか、少なくとも$ optionsと小売業者をhttp://php.net/manual/en/function.mysql-realでエスケープすることを検討してください-escape-string.phpまたは誰もが簡単なSQLインジェクションでデータベースを削除できます。 – Marc
insertは新しいレコード用、updateは既存の行用 –