![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_09.png?8acaa2e)
PHPの初心者です。あまり上達せず、困っていました。
よろしくお願いします。
用件は、POSTからもらったデータをMysqlへ追加する操作です。
とある参考書に書いてあるように、
しても、エラーで追加されません。
ちなみに、$commentの箇所を省いて、nameとpasswordだけにすると
ちゃんと追加されます。これが不思議なんです。
DBへのアカウントやパスは間違っていません。
PHPのバージョンは5です。
// データの文字コードを変換する関数
function cnv_dbstring{
XXXXXX変換するコードXXXXX
}
if (count($_POST) > 0) {
$name = $_POST["name"];
$password = $_POST["password"];
$comment = $_POST["comment"];
// データが送信されたときはデータを追加する
if (strlen($name) and strlen($password) and strlen($comment)){
// データを追加する
$sql = "INSERT INTO xx_xxxx_usr(name, password, comment) VALUES(
'".cnv_sqlstr(cnv_dbstring($name, $db_enc))."',
'".cnv_sqlstr(cnv_dbstring($password, $db_enc))."',
".cnv_sqlstr(cnv_dbstring($comment, $db_enc)).")
;";
mysql_query($sql, $conn) or die("データ追加エラー"); ←このエラーが出ます。
echo "<p>追加されたデータのID:".mysql_insert_id($conn);
}
}
No.2ベストアンサー
- 回答日時:
#ANo.1の方が書かれたように「実際に投げられているSQL文」を確認しないと話が進みませんが(汗
>mysql_query($sql, $conn) or die("データ追加エラー");
とりあえず
mysql_query($sql, $conn) or die("データ追加エラー" . mysql_error());
として、どういうエラーになっているかを確認してください。$commentだけ単引用符で括っていないように見えるので、それが原因じゃないかとは推測しますけど・・。
(蛇足)
MySQLのバージョンはいくつでしょう。4.1以降であればクライアントの文字コードとサーバの文字コードの間で自動変換になりますから「cnv_dbstring」なんてことはしなくていいハズです。
#その代わり、set names を出すとか何とかはFAQなので割愛(汗
あと・・mysql_real_escape_stringをとおさないとマズイと思います。
http://www.php.net/manual/ja/function.mysql-real …
いろいろ教えて頂きありがとうございます。
>$commentだけ単引用符で括っていないように見えるので。。。
これが原因でした。
エラー内容を表示させることでわかりました。ありがとうございます。
mysql_real_escape_stringもやってみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP プログラムコードを入力する場合改行してもいいですか? 2 2022/10/02 16:05
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP php エラー 2 2022/10/23 16:43
- PHP php テーブルが作成できない 1 2022/11/17 23:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
基本的なmysqlのDB操作につきま...
-
mysql_fetch_arrayで配列に格納...
-
テーブルに入っているデータと...
-
SQL文2つ実行
-
stringaddslashes 半角¥が消える
-
sqlから多次元配列に要素を格納...
-
VBに関するエラー
-
【PHP】クエリーの実行に失敗し...
-
住所録を作りたい
-
これでSQLインジェクション対策...
-
MySQLのUPDATE実行結果を受け取...
-
MySQLでデータベースにデータin...
-
JAVA SQLServerException 列名 ...
-
<VB.NET>INSERT文でDBにデータ...
-
PHPからMySQLを操作
-
ResultSetインターフェイスでの...
-
PHPで[]の使い方について
-
VBA ACCESS SQL...
-
実行時エラー3131 FROM 句の構...
-
エラー3011
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
phpのエラーについてです
-
テーブルに入っているデータと...
-
sqlから多次元配列に要素を格納...
-
PHPで絞り込み検索結果の件数を...
-
MySQLのデータを使ってプルダウ...
-
mysql_fetch_objectのエラー
-
XAMMPが起動しません。
-
mysql_resultのエラー
-
CSVをダウンロードさせた際、CS...
-
stringaddslashes 半角¥が消える
-
「mysqlclient」の事が分からな...
-
XAMPPで画面が真っ白になります。
-
PHP+mysqlでSQL文に文字数制限...
-
会員登録したらメールが送られ...
-
変数同士の引き算が出来ない
-
連想二次元配列のUNIXTIMEでの...
-
PHP/MySQL SQLエラーについて。
-
すいません。
-
PHPでMySQLのレコードを削除したい
-
インクルードによる不具合
おすすめ情報