質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.69%

mysqlでデータの追加を行いたいのですが#1064のエラーが表示されます

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 164

cabbage7

score 9

前提・実現したいこと

データベースを用いて次のような商品管理の課題を作成中です。

イメージ説明
このページでは、商品の追加や在庫数の変更、ステータスの公開・非公開の色分けを行う予定です。

こに質問の内容を詳しく書いてください。
まずINSERT文を用いてDBにデータを追加したいのですが次のエラーメッセージが表示され解決方法がわかっておりません。
エラーメッセージ中の太郎は太郎と入力しました。
DBは次のようになっています。
drink_id    int(50)        PRIMARY KEY    A_I    
drink_name    varchar(20)    utf8_general_ci        
price         int(11)            
create_date    datetime            
reset_date    datetime            
status         tinyint(1)
色々修正点はあるかと思いますがどなたか教えて頂けないでしょうか。
よろしくお願いいたします。

■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

エラーメッセージ#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VALUSE ("太郎",120,"2019/06/18 00:44:33","2019/06/18 00:44:33",0)ï¼›' at line 1 

該当のソースコード

` コード

$host = 'localhost'; 
$user = '';  
$passwd   = '';    
$dbname   = '';   
$error = array();
$date = date('Y/m/d H:i:s');
if($link = mysqli_connect($host,$user,$passwd,$dbname)) {
    mysqli_set_charset($link, 'UTF8');
    if($_SERVER['REQUEST_METHOD'] === 'POST') {
        if(isset($_POST['new_name'])) {
            $new_name = $_POST['new_name'];
        }
        if(isset($_POST['new_price'])) {
            $new_price = $_POST['new_price'];
        }
        if(isset($_POST['new_stock'])) {
            $new_stock = $_POST['new_stock'];
        }
        if(isset($_POST['new_img'])) {
            $new_img = $_POST['new_img'];
        }
        if(isset($_POST['new_status'])) {
            $new_status = $_POST['new_status'];
        }
        if($new_name === '') {
            $error[] = '名前が入力されていません'; 
        }
        if($new_price === '') {
            $error[] = '値段が入力されていません';
        }else if(preg_match('/\d/',$new_price) !== 1) {
            $error[] = '値段は半角数字を入力してください';
        } 
        if($new_stock === '') {
            $error[] = '個数が入力されていません';
        }else if(preg_match('/\d/',$new_stock) !== 1) {
            $error[] = '個数は半角数字を入力してください';
        }
        if(is_uploaded_file($_FILES['new_img']['tmp_name']) === FALSE) {
            $error[] = 'ファイルが選択されていません';
        } 
        $sql = 'INSERT INTO drink_info_table(drink_name,price,create_date,reset_date,status) VALUSE ("'.$new_name.'",'.$new_price.',"'.$date.'","'.$date.'",'.$new_status.')';
        mysqli_query($link, $sql);
        print $sql;
    }
}
?>

<!DOCTYPE HTML>
<html lang="ja">
<link rel="stylesheet"  href="tool.css">
<head>
    <meta charset="UTF-8">
    <title>自動販売機</title>
</head>
<body style="">
    <?php foreach($error as $value) { ?>
        <p><?php print $value ?></p>
    <?php } ?>
    <h1>自動販売機管理ツール</h1>
    <section>
        <h2>新規商品追加</h2>
        <form method="post" enctype="multipart/form-data">
            <div><label>名前: <input type="text" name="new_name" value=""></label></div>
            <div><label>値段: <input type="text" name="new_price" value=""></label></div>
            <div><label>個数: <input type="text" name="new_stock" value=""></label></div>
            <div><input type="file" name="new_img"></div>
            <div>
                <select name="new_status">
                    <option value="0">非公開</option>
                    <option value="1">公開</option>
                </select>
            </div>
            <input type="hidden" name="sql_kind" value="insert">
            <div><input type="submit" value="■□■□■商品追加■□■□■"></div>
        </form>
    </section>
    <section>
        <h2>商品情報変更</h2>
        <table>
            <caption>商品一覧</caption>
            <tbody>
            <tr>
                <th>商品画像</th>
                <th>商品名</th>
                <th>価格</th>
                <th>在庫数</th>
                <th>ステータス</th>
            </tr>
            <tr class="status_false">
                <form method="post">
                    <td><img src="cola.jpg"></td>
                    <td class="drink_name_width">コーラ</td>
                    <td class="text_align_right">100円</td>
                    <td><input type="text" class="input_text_width text_align_right" name="update_stock" value="20">個&nbsp;&nbsp;<input type="submit" value="変更"></td>
                    <input type="hidden" name="drink_id" value="145">
                    <input type="hidden" name="sql_kind" value="update">
                </form>
                <form method="post">
                    <td><input type="submit" value="非公開 → 公開"></td>
                    <input type="hidden" name="change_status" value="1">
                    <input type="hidden" name="drink_id" value="145">
                    <input type="hidden" name="sql_kind" value="change">
                </form>
            </tr>
            <tr>
            </tr>
            <tr>
                <form method="post">
                    <td><img src="can_coffee.png"></td>
                    <td class="drink_name_width">コーヒー</td>
                    <td class="text_align_right">100円</td>
                    <td><input type="text" class="input_text_width text_align_right" name="update_stock" value="1229">個&nbsp;&nbsp;<input type="submit" value="変更"></td>
                    <input type="hidden" name="drink_id" value="146">
                    <input type="hidden" name="sql_kind" value="update">
                </form>
                <form method="post">
                    <td><input type="submit" value="公開 → 非公開"></td>
                    <input type="hidden" name="change_status" value="0">
                    <input type="hidden" name="drink_id" value="146">
                    <input type="hidden" name="sql_kind" value="change">
                </form>
            </tr>
            <tr>
            </tr>
            <tr>
                <form method="post">
                    <td><img src="drink_energy.png"></td>
                    <td class="drink_name_width">エナジードリンク</td>
                    <td class="text_align_right">200円</td>
                    <td><input type="text" class="input_text_width text_align_right" name="update_stock" value="2211">個&nbsp;&nbsp;<input type="submit" value="変更"></td>
                    <input type="hidden" name="drink_id" value="150">
                    <input type="hidden" name="sql_kind" value="update">
                </form>
                <form method="post">
                    <td><input type="submit" value="公開 → 非公開"></td>
                    <input type="hidden" name="change_status" value="0">
                    <input type="hidden" name="drink_id" value="150">
                    <input type="hidden" name="sql_kind" value="change">
                </form>
            </tr>
            <tr>
                <form method="post"></form>
                    <td><img src="drink_uroncha_bottle.png"></td>
                    <td class="drink_name_width">烏龍茶</td>
                    <td class="text_align_right">150円</td>
                    <td><input type="text" class="input_text_width text_align_right" name="update_stock" value="2211">個&nbsp;&nbsp;<input type="submit" value="変更"></td>
                    <input type="hidden" name="drink_id" value="150">
                    <input type="hidden" name="sql_kind" value="update">

                <form method="post"></form>
                    <td><input type="submit" value="公開 → 非公開"></td>
                    <input type="hidden" name="change_status" value="0">
                    <input type="hidden" name="drink_id" value="150">
                    <input type="hidden" name="sql_kind" value="change">
            </tr>
            <tr>
            </tr>
            </tbody>
        </table>
    </section>
</body>
</html>

ここに言語名を入力
ソースコードカラム    データ型    照合順序    演算子    値

引用テキスト            

試したこと

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

0

エラーメッセージ、ちゃんと読みましょう。
You have an error in your SQL syntax
って書いてあります。

VALUSEあたりがおかしいことも書いてあります。(スペルミスですね)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/06/18 01:26

    ご回答ありがとうございます!
    単純なミスに気づいてなかったです。
    ありがとうございました。

    キャンセル

  • 2019/06/18 01:28

    その単純ミスを指摘してくれているメッセージなので、読んで考える、調べる癖を付けると良いと思います。

    キャンセル

0

文字化けしてる時はまずは文字コードの確認だ!

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/06/18 01:27

    ご回答有難うございます。
    単純なミスに気付けてなかったです...

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.69%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる