コード ```現在PHPでアンケートの入力フォームを作っているのですが、フォームで入力した内容をPHPadminで受け取って、リストに追加していきたいのですが、ブラウザでphpファイルが表示されません。(HTTP ERROR 500) ■状況 - phpmyadminでphpkisoというディレクトリの中にanketoというファイルを作った - リスト技術書通りにphpファイルに入力したところ500のERRORが出てしまった(技術書で書いてあった内容は、 $dsn = 'mysql:dbname=phpkiso;host=localhost'; 〜 $dbh->query('SET NAMES utf8'); この間と、$sql = 'INSERT INTO anketo (nickname, email, message) VALUES ("'.$nickname.' "," '.$email.' "," '.$message.' ")'; 〜 $dbh = null;です) ■試したこと - phpファイルでのport 変更 =>効果なし - 文法チェック - ミスチェック ■環境 テキストエディタ:visual stadio code ブラウザ:chrome PHP:7.4.2 mysql/mariadb 環境構築:MAMP(Free版) ```html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>アンケート</title> </head> <body> <form action="index.php" method="POST"> <p>名前を入力してください</p> <input type="text" name="nickname" style="width:100px"><br> <p>メールアドレスを入力してください</p> <input type="text" name="email" style="width:200px"><br> <p>メッセージを入力してください</p> <textarea name="message" cols="2px" rows="10px" style="width: 300px;"></textarea><br> <input type="radio" name="sex" value="men"> <label for="men">MEN</label> <input type="radio" name="sex" value="woman"> <label for="woman">WOMAN</label><br><br> <input type="submit" value="送信"> </form> </body> </html>
php
1<?php 2$dsn = 'mysql:dbname=phpkiso;host=localhost'; 3$user = 'root'; 4$password = ''; 5$dbh = new PDO($dsn, $user, $password); 6$dbh->query('SET NAMES utf8'); 7$nickname = htmlspecialchars($nickname); 8$email = htmlspecialchars($email); 9$message = htmlspecialchars($message); 10 11print 'ARIGATO!!'; 12print '<br>'; 13print '<br>'; 14print 'あなたのメールアドレスにメールを送信しました!'; 15 16$mail_sub = 'アンケートを受け取りました'; 17$mail_body = $nickname."様へ\nアンケートありがとうございました。"; 18$mail_body = html_entity_decode($mail_body,ENT_QUOTES, "UTF-8"); 19$mail_head = 'Form:xxx@xxx.co.jp'; 20mb_language('Japanese'); 21mb_internal_encoding("UTF-8"); 22mb_send_mail($mail, $mail_sub, $mail_body, $mail_head); 23 24$sql = 'INSERT INTO anketo (nickname, email, message) VALUES ("'.$nickname.' "," '.$email.' "," '.$message.' ")'; 25$stmt = $dbh->prepare($sql); 26$stmt->execute(); 27 28$dbh = null; 29 30?> 31
こんな感じです。
少々わかりづらいのですが、もしよろしければご回答よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー