
またお世話になります。
PHPからMySQLへデータをインサートしたいのですが、各サイトを参考にしながら試しているのですがどうにも上手くいきません。
ソースを見ていただけますでしょうか?
$con = mysql_connect("localhost","user","password")
or die("MySQLに接続できません。");
mysql_select_db('test');
$sql = "SET CHARACTER SET UTF8";
$result = mysql_query($sql);
$data1 = $HTTP_POST_VARS["inpdata1"];
$data2 = $HTTP_POST_VARS["inpdata2"];
$data3 = $HTTP_POST_VARS["inpdata3"];
$sql = 'INSERT INTO `tab1` (`abc`, `def`, `ghi`) VALUES (`$data1`,`$data2`,`$data3`);';
$result = mysql_query($sql);
print $data1; //ここでは通常にデータが表示されるので
print $data2; //データの受け渡しは問題ないはずですが。
print $data3;
mysql_free_result($result);
mysql_close($con);
No.1ベストアンサー
- 回答日時:
$result = mysql_query($sql) or die(mysql_error());
としてデバッグしてみるといいですよ。
×$sql = 'INSERT INTO `tab1` (`abc`, `def`, `ghi`) VALUES (`$data1`,`$data2`,`$data3`);';
○$sql = "INSERT INTO `tab1` (`abc`, `def`, `ghi`) VALUES ('$data1','$data2','$data3')";
単純に、valuesの中で渡すデータはバッククォーテーションではなく
シングルクォーテーションです。フィールド名ではなくデータを
わたしたいのですから・・・。
$sql変数に代入する場合のくくりはダブルクォーテーションですね。
(変数を参照するため)
それと念のため、sqlのケツのセミコロンは取っておいた方がよいです。
環境も書かない(書き忘れた)失礼な質問に親切なお礼、ありがとうございます。
無事上手くいきました。
ただ
>それと念のため、sqlのケツのセミコロンは取っておいた方がよいです。
このケツのセミコロンはないとエラーになってしまいました。
付けてあって正解のようです。
ところでこのような質問はMySQL側でよろしいのでしょうか?
PHP側で質問するべきでしょうか?
この回答だけ頂いたら回答を締め切らせていただこうと思います。
No.2
- 回答日時:
うーん、どっちなんでしょうね・・・
ま、マルチポストさえしなければどっちでもいいんじゃないですか?
私は両方ともこまめに見てますので、どちらでも
フォローできると思いますよ。
>ケツのセミコロン
説明不足ですみませんが、ケツのセミコロンとはSQL分のセミコロン
のことを言いたかったのです。
場合によってはこれをつけるとエラーになることがあります。
もちろんほんとのケツのセミコロンはPHPの文法上の区切り文字
なので必須です。
セミコロン、また私が勘違いしていたようですね。
理解できました、ありがとうございます。
マルチポストは確かにまずいですね。
今後も一連の質問は、とりあえずこちらのほうにさせていただこうと思います。
非常に簡単なものですが、なんとか作成しているデータベースも型になってきました。
同時にMySQLとPHPも少し分かってきたような気がします。
今後もぜひご指導お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラー 1068 (42000): 複数の主...
-
SQLで漢字名称を都道府県や市区...
-
mysqlがインストールされている...
-
SQLを作ったのですがうまくいき...
-
SQLです!!教えてください。あ...
-
#1062 - '0' は索引 'PRIMARY' ...
-
`picture` varchar(255) のコマ...
-
同一日に複数レコードがある場...
-
MAMP 99ドル約1.6万円 高い...
-
あってますか?SQL
-
WHERE `年月日` = '晴' OR `年...
-
SQLです教えてくださいお願いし...
-
(初心者)MySQLやmaraDBで、crea...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてください。
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
utf8bomとutf8mb4の違いがいま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コメントが消えてしまいます
-
MySQLの.sqlファイルを実...
-
【php+mysql】mysqlのレコード...
-
mysqlって???(汗
-
phpからinsertできない
-
sqliteとの互換
-
INSERTを行う際に別の表のデー...
-
mySQLで複雑な演算
-
.sqlのファイルをそのままコマ...
-
カラムの暗号化
-
my sqlはどこにあるのか?
-
Perlでexecuteをまとめて実行し...
-
jspとsqlの連結したページ
-
MySQL記述でアドバイスを
-
ダブルコーテーションやシング...
-
insert into $DB (data1, data2...
-
検索後のソートについて
-
SQLで取得したフィールドをSQL...
-
MySQLカラム名は日本語と英数字...
-
mysqlがインストールされている...
おすすめ情報