
●質問の主旨
Parse error: syntax error, unexpected 'maker_id' (T_STRING)
in C:\xampp\htdocs\shop\input_do.php on line 23
というエラーが出ます。なぜエラーが出るのか分かりません。
エラーを表示させないためには、下記のコードをどのように
書き換えればよいでしょうか?ご存知の方、ご教示願います。
●質問の補足
1.HTMLフォームinput.php(添付画像)に情報を入力。登録ボタンを押す
↓
2.受付画面(input_do.php)に遷移
という流れを作りたいのですが、上記のエラーが出ます。
もちろんデータベース(mydb3)やテーブル(my_items)は、
すでにphpmyadminに用意しています。
●開発環境
windows8
xammp1.8.1
●参考文献
たにぐちまこと
「よくわかるPHPの教科書」P200
●コード
(input.php)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>商品登録</title>
</head>
<body>
<div id="wrap">
<div id="head">
<h1>トップページ</h1>
</div>
<div id="content">
<p style="margin-top: 20px">
<?php
mysql_connect('localhost', 'root','') or die(mysql_eror());
mysql_select_db('mydb3') or die(mysql_error());
mysql_query('SET NAMES UTF8');
$sql = sprintf('INSERT INTO my_items SET maker_id=%d, item_name="%s", price=%d, keyword="%s",
mysql_real_escape_string($_POST['maker_id']),
mysql_real_escape_string($_POST['item_name']),
mysql_real_escape_string($_POST['price']),
mysql_real_escape_string($_POST['keyword'])
);
mysql_query($sql) or die(mysql_error());
?>
</p>
</div>
<p>商品を登録しました</p>
<div id="foot">
<p><img src="images/txt_copyright.png" width="136" height="15" alt="(C) H2O Space. MYCOM" /></p>
</div>
</div>
</body>
</html>
(input_do.php)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>商品登録</title>
</head>
<body>
<div id="wrap">
<div id="head">
<h1>商品登録</h1>
</div>
<div id="content">
<p>登録する商品の情報を記入してください。</p>
<form id="frmInput" name="frmInput" method="post" action="input_do.php">
<dl>
<dt>
<label for="maker_id">メーカーID</label>
</dt>
<dd>
<input name="maker_id" type="text" id="maker_id" size="10" maxlength="10" />
</dd>
<dt>
<label for="item_name">商品名</label>
</dt>
<dd>
<input name="item_name" type="text" id="item_name" size="35" maxlength="255" />
</dd>
<dt>
<label for="price">価格</label>
</dt>
<dd>
<input name="price" type="text" id="price" size="10" maxlength="10" />
円</dd>
<dt>
<label for="keyword">キーワード</label>
</dt>
<dd>
<input name="keyword" type="text" id="keyword" size="50" maxlength="255" />
</dd>
<input type="submit" value="登録する" />
</form>
</div>
<div id="foot">
<p><img src="images/txt_copyright.png" width="136" height="15" alt="(C) H2O Space. MYCOM" /></p>
</div>
</div>
</body>
</html>

No.1ベストアンサー
- 回答日時:
こんにちは。
Parse error: syntax error, unexpected 'maker_id' (T_STRING)
in C:\xampp\htdocs\shop\input_do.php on line 23
syntax errorというのは文法がエラーですのでエラー行付近を確認してみてください。
$sql = sprintf ( 'INSERT INTO my_items SET maker_id=%d, item_name="%s", price=%d, keyword="%s"',
mysql_real_escape_string('a'),
mysql_real_escape_string('b'),
mysql_real_escape_string('c'),
mysql_real_escape_string('d')
);
修正してみました。見比べてみてください。
'(シングルクォーテションのとじ忘れです)
LancerVIIさま
ご回答ありがとうございます!
〉'(シングルクォーテションのとじ忘れです)
アドバイスの通り
'(シングルクォーテション)を
入れると、画面の遷移ができました!
助かりました。
No.3
- 回答日時:
は参考になりましたか?
Tacosanさん
ご回答ありがとうございます!
時間をまたいで確認しても、
どうしても分からなかったので、
聞いてしまいました。
誠に恐れ入ります。
No.2
- 回答日時:
>>syntax error
「文法エラー」ですね。
(書き方の間違い。な内容。
>>$sql = sprintf('INSERT INTO my_items SET maker_id=%d, item_name="%s", price=%d, keyword="%s",
>>mysql_real_escape_string($_POST['maker_id']),
>>mysql_real_escape_string($_POST['item_name']),
>>mysql_real_escape_string($_POST['price']),
>>mysql_real_escape_string($_POST['keyword'])
>>);
何か、この辺、おかしくないですか??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アラートでyes noを作りたいです。
-
checkboxで複数選択して,OR...
-
sortable ギブアップです…助け...
-
PHPで[]の使い方について
-
複雑なSELECT文のの書き方について
-
チェックボックスの値の受け渡し
-
SQLiteのhtml表示
-
dbに登録したデータをphpのプル...
-
ユーザー名、パスで認証して、...
-
php ログインフォーム作成
-
phpでmysqlを使ってデータベー...
-
PHP セレクトメニューの呼び出...
-
phpについて
-
MySQLでデータベースにデータin...
-
insert1つの処理でもトランザ...
-
エラー3011
-
Accessのテーブルへ複数の主キ...
-
mysql php 複数のクエリ
-
実行時エラー3131 FROM 句の構...
-
csvをDBへ読み込んだら、NULLが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
dbに登録したデータをphpのプル...
-
DBで検索結果に該当するデータ...
-
アラートでyes noを作りたいです。
-
PHPの画像表示関連(?)プログラ...
-
データの取得方法
-
配列で指定した値のみをMySQLか...
-
警告を出さないコードの書き方
-
PHPで[]の使い方について
-
ループ文で呼び出したデータの...
-
DBからSelectしたレコードのデ...
-
mySQLで結果が無いときの処理
-
データベースのページング出力...
-
PHP セレクトメニューの呼び出...
-
PHP 10件表示 "前へ" "次へ"
-
mySQLからデータを取り出す
-
データベースサーバーにあるデ...
-
PHPのプルダウンメニューにDBの...
-
mysql>PHPにデータ表示、10件ご...
-
テーブル<TR></TR>の処理について
-
php テーブルが作成できない
おすすめ情報