🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
INSERT

INSERTとは、行を追加する、コンピュータのデータベース言語SQLにおけるデータ操作言語(DML)ステートメントの1つである

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

解決済

1回答

1034閲覧

データベースに入力内容が正しく反映されない

hmdnntr

総合スコア6

INSERT

INSERTとは、行を追加する、コンピュータのデータベース言語SQLにおけるデータ操作言語(DML)ステートメントの1つである

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2019/11/22 10:00

前提・実現したいこと

PHPで入力内容をデータベースに登録するものを作成中です。
エラーメッセージは表示されず、「登録しました」となるのですが、
データベースを見ると更新しても入力内容が反映されていません。

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

エラーメッセージは表示されないが、入力内容がデータベースへ登録がされない。

該当のソースコード

database1.php <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>課題登録</title> </head> <body> <h1>新規課題登録</h1> <form action="database2.php" method="POST"> <p>No.</p> <input type="text" name="id" value="" size="50"> <br> <table border ='1'> <tr> <th width="100" nowrap>年度</th> <th width="100" nowrap>クラス</th> <th width="100" nowrap>回次</th> <th width="100" nowrap>種類</th> <th width="100" nowrap>ジャンル</th> <th width="100" nowrap>難易度</th> </tr> <tr> <th width="100" nowrap> <select name="year"> <option value="2020">2020</option> <option value="2019">2019</option> <option value="2018">2018</option> </select> <th width="100" nowrap> <select name="class"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> </select> <th width="100" nowrap> <select name="number"> <option value="第1回">第1回</option> <option value="第2-3回">第2-3回</option> <option value="第4-5回">第4-5回</option> <option value="第6-7回">第6-7回</option> <option value="第8-9回">第8-9回</option> <option value="第10回">第10回</option> <option value="第11-12回">第11-12回</option> <option value="第13-14回">第13-14回</option> <option value="第15回">第15回</option> </select> <th width="100" nowrap> <select name="genre"> <option value="出席課題">出席課題</option> <option value="基礎課題">基礎課題</option> <option value="発展課題">発展課題</option> </select> <th width="100" nowrap> <select name="mso"> <option value="Word">Word</option> <option value="Excel">Excel</option> <option value="PowerPoint">PowerPoint</option> <option value="その他">その他</option> </select> <th width="100" nowrap> <select name="level"> <option value="易しい">易しい</option> <option value="普通">普通</option> <option value="難しい">難しい</option> </select> </tr> </table> <p>課題タイトル<br> <input type="text" name="practice" value="" size="50"> <p>期限<br> <input type="text" name="time" value="" size="50"> <p>含まれる内容(ねらい)<br> <input type="text" name="purpose" value="" size="200"> <p>サンプル・その他留意事項<br> <input type="text" name="other" value="" size="200"> <p>課題ファイル<br> <input type="text" name="file" value="" size="50"> <p><input type="submit" value="上記の内容で登録する"></p> </form> </body> </html>
database2.php <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>課題登録</title> </head> <body> <?php $con = mysqli_connect('localhost', 'root', '2019minato'); if (!$con) { exit('データベースに接続できませんでした。'); } $result = mysqli_select_db($con,'test'); if (!$result) { exit('データベースを選択できませんでした。'); } $result = mysqli_query($con, 'SET NAMES utf8'); if (!$result) { exit('文字コードを指定できませんでした。'); } $id=filter_input(INPUT_GET,'id'); $year=filter_input(INPUT_GET,'year'); $class=filter_input(INPUT_GET,'class'); $number=filter_input(INPUT_GET,'number'); $mso=filter_input(INPUT_GET,'mso'); $genre=filter_input(INPUT_GET,'genre'); $level=filter_input(INPUT_GET,'level'); $practice=filter_input(INPUT_GET,'practice'); $time=filter_input(INPUT_GET,'time'); $purpose=filter_input(INPUT_GET,'purpose'); $other=filter_input(INPUT_GET,'other'); $file=filter_input(INPUT_GET,'file'); $result = mysqli_query($con,"INSERT INTO bank(id,year, class, number, mso, genre, level, practice, time, purpose, other, file) VALUES('$id', '$year', '$class', '$number', '$mso', '$genre', '$level', '$practice', '$time', '$purpose', '$other', '$file')"); if (!$result) { exit('データを登録できませんでした。'); } $con = mysqli_close($con); if (!$con) { exit('データベースとの接続を閉じられませんでした。'); } ?> <p>登録が完了しました。<br /><a href="database1.php">戻る</a></p> </body> </html>

試したこと

エラーが出ないためどこが間違っているがが分からず困っています。

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

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

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

MysqlではなくPDOを利用していろいろやってみたところ解決できました。

投稿2019/12/01 14:07

hmdnntr

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問