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

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

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

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

Q&A

解決済

2回答

729閲覧

php [このページは動作していません]の原因が知りたい。

退会済みユーザー

退会済みユーザー

総合スコア0

PHP

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

0グッド

0クリップ

投稿2022/02/09 12:43

提示コードですがこれは会員登録の仮登録のメール送信ページなのですがメールアドレスを入力してこのページに飛ぶとこのページは動作していませんというエラーが出るのですが原因がわかりません。これはなぜでしょうか?

php

1<!DOCTYPE html> 2<html lang=ja> 3 <head> 4 <meta charset="utf-8"> 5 6 <link rel="stylesheet" href="style.css"> 7 <title>send</title> 8 </head> 9 10 <body> 11 12<?php 13ini_set("display_errors",1); 14error_reporting(E_ALL); 15session_start(); 16?> 17 18<h1 class="center"> 登録確認 </h1> 19 20<?php 21 22 $dsn = 'mysql:dbname=Bulletin_Board;host=localhost;charset=utf8'; 23 $dbh = new PDO($dsn,"root",""); 24 25 26if(empty($_POST['submit']) == true) 27{ 28 echo "メールアドレスが未入力です"; 29} 30else 31{ 32 $mail = $_POST['mail']; 33 if(!preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $mail)) 34 { 35 echo "メールアドレスの形式が正しくありません。"; 36 } 37 38 $sql = "SELECT id FROM Account WHERE mail=:mail"; 39 $stm = $dbn->prepare($sql); 40 $stm->bindValue(':mail',$mail,PDO::PARAM_STR); 41 $stm->execute(); 42 $result = $stm->fetch(PDO::FETCH_ASSOC); 43 44 if(isset($result["id"]) == true) 45 { 46 echo "このメールアドレスは既に利用されています。"; 47 } 48 else 49 { 50 $urltoken = hash('sha256',uniqid(rand(),1)); 51 $url = "http://localhost:registerCheck.php?urltoken=".$urltoken; 52 53 try 54 { 55 $dsn = 'mysql:dbname=Bulletin_Board;host=localhost;charset=utf8'; 56 $dbh = new PDO($dsn,"root",""); 57 58 $sql = 'INSERT INTO `preAccount`(`mail`,`token`,`enable`,`date`) VALUES (:mail,:urltoken,'0',now())'; 59 $stmt = $dbh->prepare($sql); 60 $stmt->bindValue(':token',$urltoken,PDO::PRARAM_STR); 61 $stmt->bindValue(':mail',$mail,PDO::PRARAM_STR); 62 $stmt->execute(); 63 $dbh = null; 64 65 }catch(PDOException $e) 66 { 67 print('Error:'.$e->getMessage()); 68 } 69 70 /* 71 $mailTo = $mail; 72 $body = <<< EOM 73 この度はご登録いただきありがとうございます。 74 24時間以内に下記のURLからご登録下さい。 75 {$url} 76EOM; 77 mb_language('ja'); 78 mb_internal_encoding('UTF-8'); 79 80 //Fromヘッダーを作成 81 $header = 'From: ' . mb_encode_mimeheader($companyname). ' <' . $companymail. '>'; 82 83 if(mb_send_mail($mailTo, $registation_subject, $body, $header, '-f'. $companymail)){ 84 //セッション変数を全て解除 85 $_SESSION = array(); 86 //クッキーの削除 87 if (isset($_COOKIE["PHPSESSID"])) { 88 setcookie("PHPSESSID", '', time() - 1800, '/'); 89 } 90 //セッションを破棄する 91 session_destroy(); 92 $message = "メールをお送りしました。24時間以内にメールに記載されたURLからご登録下さい。"; 93 } 94 */ 95 } 96} 97 98?> 99 100 101</body> 102 103</html> 104

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

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

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

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

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

maisumakun

2022/02/09 12:47

ログなどは確認してみましたか?
退会済みユーザー

退会済みユーザー

2022/02/09 12:51

はい、先頭で以下のようにログを取っていますがそもそもページ自体が開けないため見れません ini_set("display_errors",1); error_reporting(E_ALL);
maisumakun

2022/02/09 12:54

> ページ自体が開けないため見れません ログファイルは確認してみましたか?
guest

回答2

0

以前指摘しました:
https://teratail.com/questions/lppdjxz6azakln#reply-9i1udi69ay9fhu
php.ini ファイルの上で、
display_errors や error_reporting の設定値変更をしておくことで、
webブラウザ上にエラー表示されるようになります。
phpファイルの冒頭で臨時の設定値変更をすると、
文法エラーなどがあると設定値変更が反映されずwebブラウザ上にエラー内容が表示されません。
(体験しましたよね。)

エラー表示されないとしても、
webサーバー(apache httpd)の error_log ファイルにエラー内容が出力されているはずなので、
そこもチェックするのも忘れないようにしましょう。
(error_reportingの設定値次第では、error_logファイルへの出力も絞られたりするので、
やっぱりphp.iniで出力を強化しておくことをおすすめします。)

投稿2022/02/10 00:23

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

ベストアンサー

エラーログを確認してみろとの指摘があっため確認してみたところ下記のエラーがりboolean型に整数値を設定してることが原因でした。
[[09-Feb-2022 13:45:25 Europe/Berlin] PHP Parse error: syntax error, unexpected integer "0" in /opt/lampp/htdocs/sample/registerCheck.php on line 58]

投稿2022/02/09 13:03

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問