またお世話になります。
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を探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WHERE `年月日` = '晴' OR `年...
-
テーブル名が可変の場合のクエ...
-
#1062 - '0' は索引 'PRIMARY' ...
-
SQLの検索について
-
SQLです教えてくださいお願いし...
-
utf8bomとutf8mb4の違いがいま...
-
XamppでインストールしたMySQL...
-
あってますか?SQL
-
SQLです教えてくださいお願いし...
-
SQLを作ったのですがうまくいき...
-
(初心者)MySQLやmaraDBで、crea...
-
SQLです教えてくださいお願いし...
-
SQLです教えてください。
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
「総降水量が100mm以上になる...
-
SQLで漢字名称を都道府県や市区...
-
SQLあってますか?こう?
-
SQL構文です 画像のようにした...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【php+mysql】mysqlのレコード...
-
phpからinsertできない
-
PHP+MySQLによるINSERTについて
-
コメントが消えてしまいます
-
F5対策 sql発行ページにて
-
PHP+MySQLでデータ登録がうまく...
-
.sqlのファイルをそのままコマ...
-
MySQLで、INSERT文でエラー
-
どうしても、%$keyword%でひっ...
-
mySQLで複雑な演算
-
insert into $DB (data1, data2...
-
SQLiteについて
-
PEARでレコード数の取得
-
my sqlはどこにあるのか?
-
SQLで取得したフィールドをSQL...
-
updateがうまくできない。
-
接続ができません
-
ODP.NETのバージョン確認
-
副問合せにLIKE文を使う方法は...
-
SQLのVARCHARとVARCHAR2の違い
おすすめ情報