<やりたいこと>
登録フォームから必要項目の入力→入力されたメールアドレスへ確認メールの送信→そのメールにあるリンクをクリックするとアカウントが正式登録される。
現状DBへはデータが入るのですが、メールが届かない状態です。
調べるとPHP.iniのデフォルトsettingの変更などはしてみたものの、特に変化はないです。
私のコードが原因だとは思うのですが、どこが間違いか指摘して頂けると幸いです。
<DB:microblog>
<テーブル名:USERS>
<カラム名:firstname/lastname/email/phone/birthdate/username/password>
<html> <head> </head> <body> <?php if(isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] === 'POST') { ini_set('display_errors',1);//画面にエラーを表示 error_reporting(E_ALL); session_start(); $firstname=''; $lastname=''; $email=''; $phone=''; $birthdate=''; $username=''; $password=''; if(isset($_POST['firstname']) && isset($_POST['lastname']) && isset($_post['email']) && isset($_POST['phone']) && isset($_POST['birthdate']) && isset($_POST['username']) && isset($_POST['password'])){ $_SESSION["USER"] = 'USER'; header("Location:error.php"); exit; } if(isset($_POST['email'])){ echo "Plese check confirmation Email"; } else { echo "We failded sending Email to you , please check your Email address again"; }; $dsn ='mysql:host=localhost;dbname=microblog'; $user ='root'; $password ='root'; //$USER = $FILES['firstname']['lastname']['email']['phone']['birthdate']['username']['password']; try { $db = new PDO($dsn,$user,$password); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $db->prepare("INSERT INTO users(firstname,lastname,email,phone,username,password) VALUES (:firstname, :lastname, :email, :phone, :username, :password)"); $stmt->execute(array( ':firstname' => $_POST['firstname'], ':lastname' => $_POST['lastname'], ':email' => $_POST['email'], ':phone' => $_POST['phone'], ':username' => $_POST['username'], ':password' => $_POST['password'] )); } catch(PDOException $e){ die ('error:'.$e->getMessage()); } } function Send_Mail($to, $from, $title, $body, $header) { // メール送信 mb_language('e'); //mb_internal_encoding("ISO-2022-JP"); $to = $_POST['email']; $title ="test"; $body ="test"; $header = "From:"; $from = "test"; //$from $result = mb_send_mail($to, $title, $body, $header, $from); return $result; } Send_Mail($result); ?> <h2>Register your information</h2> <form method="POST" action="register.php"> Fastname:<input type="text" name="firstname"><br><br> Lastname:<input type="text" name="lastname"><br><br> Email Adrress:<input type="text" name="email"><br><br> Phone Number:<input type="text" name="phone"><br><br> Birth Date:<input type="text" name="birthdate"><br><br> Username:<input type="text" name="username"><br><br> Password:<input type="text" name="password"><br><br> <input type="submit" name="register" value="Register"> </form> </body> </html> コード
回答3件
あなたの回答
tips
プレビュー