はじめまして。
MySQL+PHP初心者なのですが、INSERT文中での変数展開がうまくいきません。

フォームから受け取ったデータを単純にレコードに追加するだけなのですが、

mysql_query('insert into area_tbl (area)values($area)');

areaのデータ型はテキストで、$areaをクォーテーションで囲めば当然のごとくそのまま表示されてしまいますし、事前に $area = $_POST['area'] の処理をしてもダメです。直後に echo "$area" をするとフォームに入力した文字列が表示されるので、データの受け渡しはうまくいっていると思います。また ($area) の代わりに'あいうえお'といれると【あいうえお】とデータベースに反映されるので、MySQLとPHPの日本語対応の問題もないと思います。なぜでしょうか?

ご指導のほどよろしくお願いいたします。

A 回答 (3件)

mysql_query("insert into area_tbl (area)values('$area')");


でもできる。
    • good
    • 0

mysql_query('insert into area_tbl (area)values("'.$area.'")');


を試してみてください。
    • good
    • 0
この回答へのお礼

一発でうまくいきました。

MySQLやPHP関連のサイトを見て回ったのですが、なかなか答えにたどり着けずにいました。ありがとうございます。

お礼日時:2005/04/11 19:51

'(シングルクォート)で括った場合は変数展開されません。


"(ダブルクォート)で括りましょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

今、見られている記事はコレ!

おしトピ編集部からのゆる~い質問を出題中

お題をもっとみる

このQ&Aを見た人が検索しているワード


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ