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

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

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

Q&A

0回答

366閲覧

掲示板にJavaScriptの埋め込み

退会済みユーザー

退会済みユーザー

総合スコア0

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

1グッド

1クリップ

投稿2018/12/31 03:44

前提・実現したいこと

PHP 7.2.4, 5.5.56-MariaDB MariaDB Server, HTML5
で簡易的な掲示板を作っています。

そこでコメント, 名前を無記入の場合にJavaScriptを利用してエラーポップアップを出力させようとしたのですが, 掲示板のリダイレクトをさせた所スクリプトが実行されなくなってしまいました。
基本コピペプログラムで何がどう動いているか理解していません(-_-;)。

リダイレクトさせたまま, エラーメッセージを表示させるにはどうすればいいでしょう。

データベース接続ファイル(data_connect.php)

<?php $dsn = 'mysql:host=localhost;dbname=test;charset=utf8'; $db_user = 'root'; $db_pass = 'test'; try{ $pdo = new PDO($dsn, $db_user, $db_pass); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "connect succefully<br>"; }catch (PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>

掲示板ソースコード(simple_bbs.php)

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title>SIMPLE BBS</title> </head> <body> <form action="simple_bbs.php" method="post"> <p> 名前:<input type="text" name="name" size="40"> </p> <p> コメント:<br> <textarea name="comment" rows="4" cols="50"></textarea> </p> <p> <input type="submit" name="post" value="投稿"><input type="reset" value="リセット"> </p> <p> <input type="submit" name="delete" value="全削除"> </p> </form> </body> </html> <?php // MySQLサーバーへと接続とデータベースの選択 include_once "data_connect.php"; echo '---------------------------------<br>名前:<br>コメント<br>'; //投稿ボタン if (isset($_POST['post'])){ if (!empty($_POST['name'])){ if (!empty($_POST['comment'])) { $name = $_POST['name']; $comment = $_POST['comment']; $sql = "INSERT INTO simple_bbs VALUES('$name', '$comment')"; $res = $pdo->query($sql); }else { echo '<script>alert("コメントを入力してください")</script>'; } }else { echo '<script>alert("名前を入力してください")</script>'; } }else { if (isset($_POST['delete'])){ $sql = "DELETE FROM simple_bbs"; $res = $pdo->query($sql); } } //テーブル整形 $sql = 'SELECT * FROM simple_bbs'; $result = $pdo->query($sql); foreach($result as $row) { echo '---------------------------------<br>'; echo $row['name']. ':'; echo '<br>'; echo $row['comment']. '<br>'; } echo '---------------------------------<br>'; //MySQLサーバーの接続を閉じる $pdo = null; //問題個所 if($_SERVER['REQUEST_METHOD']==='POST'){ //POSTで処理を終えた時 header('Location:http://192.168.56.2/simple_bbs.php'); //リダイレクトで多重投稿防止 } ?>
bochan2👍を押しています

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

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

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

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

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

m.ts10806

2018/12/31 03:59

>基本コピペプログラムで何がどう動いているか理解していません(-_-;)。 理解しましょうとしか言えませんよ。 回答しても理解されないと分かってるのに回答したがる人はなかなかいません。回答した内容を以てまた質問されるのが分かっているからです。
m.ts10806

2018/12/31 04:04 編集

言うほど難しい内容ではないのでひとつひとつPHPマニュアルで確認しながら理解してください。でないと、ちょっと何かやりたいと思ったときに何もできず丸投げ質問を繰り返すことになります。 それに見たところどこにもJavaScriptの記述がないようですが…
退会済みユーザー

退会済みユーザー

2018/12/31 04:03

理解してないコードの誤りを説明しても理解できるわけがないのでまずは理解してください。(それで普通は自己解決をする)
m.ts10806

2018/12/31 04:06

んー。退会するとは。 自分で理解してないことを主張しても理解しようとしか言えないですよねー…
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問