お世話になります。
前提・実現したいこと
PHPで申し込み内容によってメルマガを振り分ける条件分岐の機能を実装中に以下のエラーメッセージが発生しました。
entryPlanがaだった場合$noをAとし、entryPlanがBだった場合$noをBとしたいです。
発生している問題・エラーメッセージ
Parse error: syntax error, unexpected 'if' (T_IF), expecting '(' in /contact_send.php on line 25
該当のソースコード
PHP
1<? 2if(empty($_POST)) 3{ 4 header("HTTP/1.1 404 Not Found"); 5 exit(); 6} 7 8$subject = "メール講座お申し込み完了"; 9$body = "メール講座のお申し込みを受け付けました。\n\n" . 10 11 "内容:{$_POST['entryPlan']}\n" . 12 "会社名:{$_POST['company']}\n" . 13 "お名前:{$_POST['fname']} {$_POST['lname']}\n" . 14 "メールアドレス:{$_POST['email']}\n"; 15 16mb_send_mail($_POST['your-email'], $subject, $body, "From: info@○○○○.jp"); 17// mb_send_mail("info@○○○○.jp", $subject, $body, "From: info@○○○○.jp"); 18 19// メルマガに登録するユーザーリストに登録 20function register_mail_newsletter_list($email, $date, $no, $status = 0) 21{ 22$url = "https://1lejend.com/stepmail/kd.php?no={$no}"; 23 24$data = array 25if ({$_POST['entryPlan']}->'a') 26 { 27 $no = 'A' 28 }; 29else ($_POST['entryPlan'->b]) 30 { 31 $no = 'B' 32 }; 33( 34 "registration_mail" => $email, 35 "do" => "OK", 36 "no" => $no, 37); 38$options = array("http" => array 39( 40 "method" => "POST", 41 "content" => http_build_query($data), 42)); 43file_get_contents($url, false, stream_context_create($options)); 44} 45 46header("Location: thanks.html"); 47?> 48
試したこと
unexpected 'if'とあるので、ifをはずしたところ、次は unexpected '{'と出てきました。
「$data = array」の後のセミコロンを書き忘れただけでは?
ご回答頂きありがとうございます。
セミコロンを追加すると、
Parse error: syntax error, unexpected ';', expecting '(' in /contact_send.php on line 24
というエラー文が返ってきます。
いろいろ間違いが多いので、IDEを導入して文法エラーを手っ取り早く除外するか、以下の公式マニュアルを熟読して基礎からきっちり積み上げた方が良いとおもいます。
https://www.php.net/manual/ja/index.php
ご回答頂きありがとうございます。
IDEを導入してみましたが、いまいち使い方がわからない状況です。
回答1件
あなたの回答
tips
プレビュー