2013-11-22 30 views
-1

我的自動電子郵件有一些問題,我嘗試連接變量,但是,它返回的是空白頁而不是重定向。電子郵件中的PHP串聯字符串

$to = "*******"; 
$subject = "New signup"; 
$message = " 
Name:" . $row['first_name'] $row['surname'] . 
"Date of birth:" . $row['dob'] . 
"Address" . $row['house'] $row['street'] $row['town'] $row['postcode'] . 
"Application type:" . $name . 
"Price:" . $a . 
"Country of birth:" . $row['origin'] . 
"Phone number:" . $row['number'] . 
"Email:" . $row['email'] . 
""; 
$from = "*******"; 
$headers = "From:" . $from; 
mail($to,$subject,$message,$headers); 
header('Location: payment.php?id='.$row['app_id']); 
exit(); 

任何想法?謝謝您的幫助。

+0

你錯過了變量之間的連接符 - '$行[「FIRST_NAME」] $ row ['surname']'應該是'$ row ['first_name']。 $行[ '姓']'。地址欄也一樣。 – andrewsi

+0

確保打開錯誤報告可能是個好主意。這將是一種比使用堆棧溢出更有效的檢查語法的方法... –

回答

1

您需要使用之間的連接符每變量和字符串:

Name:" . $row['first_name'] . $row['surname'] . 
"Date of birth:" . $row['dob'] . 
"Address" . $row['house'] . $row['street'] . $row['town'] . $row['postcode'] . 
1

不要做多級聯/分配這樣。使用HEREDOC。這是一個更容易維護和閱讀:

$message = <<<EOL 
Name: {$row['first_name']} {$row['surname']} 
Date of birth: {$row['dob']} 
etc... 
EOL; 
0

您可以通過使用字符串插值避免串聯:

$message = " 
Name: {$row['first_name']} {$row['surname']} 
Date of birth: {$row['dob']} 
Address: {$row['house']} {$row['street']} {$row['town']} {$row['postcode']} 
Application type: $name 
Price: $a 
Country of birth: {$row['origin']} 
Phone number: {$row['number']} 
Email: {$row['email']}"; 
+0

變量$ name和$ a是什麼? –

+0

是的,他們將被插值。花括號只是數組中''string''索引所必需的。 –

相關問題