我想使用一些靜態和一些動態數據自動發送電子郵件。因此,這是過程:使用PHP,HTML和JSON發送電子郵件
- 在我的主要
*.php
I'm取出由我ddbb和 創建JSON數據。 - 我要將此JSON發送給另一個
*.php
來管理此數據 將其插入我的<html>
(第二*.php
)。 - 再次在第一個* .php我準備郵件選項併發送 它。這是代碼。
first.php
...
$query1= mysqli_query($connect, "SELECT * FROM table1 WHERE id='".$field1."'");
$row1= mysqli_fetch_array($query1);
$data_row1[] = $row1;
$query2= mysqli_query($connect, "SELECT * FROM table2 WHERE id='".$field2."'");
$row2= mysqli_fetch_array($query2);
$data_row2[] = $row2;
$data = array(
"data_row1" => $data_row1,
"data_row2" => $data_row2
);
$json_data = json_encode($data);
$url = 'https://webpage.com/folder/second.php?';
$variables = 'data='.$json_data;
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $variables);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$email_text = curl_exec($ch);
curl_close($ch);
然後,在second.php
:
<?php
$result = $_GET['data'];
$data = json_decode($result);
$row_data1[] = $data['row_data1'];
$row_data2[] = $data['row_data2'];
$name= $row_data1['var1']." ".$row_data1['var2'];
$city= $row_data2['var2'];
...
?>
<html>
... Some html printing the dynamic values using <?php echo $name; ?>
</html>
最後,再次在first.php
...
$to = $destionation_email;
$subject = "The email subject";
$headers = "From: [email protected]".strip_tags($_POST['req-email']) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
mail($to, $subject, $email_text, $headers);
但我的問題是,second.php
沒有獲取JSON和電子郵件只顯示靜態html
,沒有任何數據。
任何解決方案從second.php
獲取JSON?
第一個「?」在那裏,但沒有「;」。我會嘗試;) –
當我發佈它時,它不在那裏,假設你的意思是在實際的代碼中。 –
是的,這是在我的代碼,但在這裏。否則,不能添加「;」。 –