SQL文はPHP内に書く場合、ちょっと特殊な書き方をするので以下のように書けば間違いが少なくなります。
- SQL文はヒアドキュメントをつかう
- テーブルやフィールドはバッククォート、値はシングルクォートでくくる
- 変数は{$hoge}形式で参照する
- SQL文の最後になるべく;はつけない
- エラーはmysql_error()で確認する
SQL文はヒアドキュメントをつかう
$sql=<<< EOFヒアドキュメントを使う利点は、SQL文を項目ごと(コマンドごと)に改行してわかりやすくできるという点が一つ。もう一つは複数のSQL文がある際にはSQLを別々に保存できることと、使いまわしができるという点です。特に限定したSQL文しか使わないという場合は別ファイルにライブラリー化しておくこともできます。概してコードがすっきりするのでデバックしやすい。
create database '{$c_database_name}' ←こんな風に改行できます。
character '{$character_set}'
EOF;
$result=mysql_query($sql) or die($sql.mysql_error());
テーブルやフィールドはバッククォート、値はシングルクォートでくくる
$sql=<<< EOFSQL文の中身をわかりやすくするためにちょっと手間ですがバッククォートを使うとなかなかいい感じになります。SQL文に限りなく似ているテーブル名やフォールド名の場合は尚更で、バッククォートしているとわかりやすいです。
update '{$DATANAME}'
set `rem`='{$new_rem}' ←remでもいいんですが、できれば`rem`
where `id`='{$id}'
EOF;
$result=mysql_query($sql) or die($sql.mysql_error());



