PHP腳本條件判斷,foreach循環,以及粘性表單

(《Head First PHP & MySQL》學習記錄)

php代碼:

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Send Email</title>
</head>

<body>
	<h1>Send email to subscribers</h1>
    <p>Maystudio's administrators only!</p>
    	<?php
			$dbc=mysqli_connect('127.0.0.1','root','12345678','maystudio') or die('Error connecting MySQL server.');
			$query="SELECT * FROM email_list";
			$result=mysqli_query($dbc,$query) or die('Error querying database.');
			$subject=$_POST['subject'];
			$body=$_POST['body'];
			$from='[email protected]';
			$output_form=false;
			
			/*如果按下提交按鈕*/
			if(isset($_POST['submit'])){
				/*如果主題或內容項爲空,提示並顯示錶*/
				if(empty($subject)||empty($body)){
					echo "You haven't complete the form yet...<br />";
					$output_form=true;
				}
				/*如果收件人項爲空,提示並顯示錶*/
				if(empty($_POST['to'])){
					echo "You haven't select receivers...<br />";
					$output_form=true;
				}
				/*都不爲空,發送郵件*/
				else{
					echo "Email sent to: <br />";
					foreach($_POST['to'] as $toid){
						$query="SELECT * FROM email_list WHERE id = $toid";
						$result=mysqli_query($dbc,$query) or die('Error querying database.');
						$subscriber=mysqli_fetch_array($result);
						$firstname=$subscriber['first_name'];
						$lastname=$subscriber['last_name'];
						$to=$subscriber['email'];
						$msg="Dear $firstname $lastname, \n $body";
						mail($to,$subject,$msg,'From: '.$from);
						echo $firstname.' '.$lastname.' '.$to.'<br />';
					}
					/**/
					echo '<a href="send-email.php">Back</a>';
				}
			}
			/*如果沒有按下提交按鈕,顯示錶*/
			else{
				$output_form=true;
			}
			/*顯示錶*/
			if($output_form){
		?>
     <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
     	<label for="to">To: </label><br />
        <?php
			/*循環輸出收件人選項*/
			while($row=mysqli_fetch_array($result)){
				echo '<input type="checkbox" value="'.$row['id'].'" name="to[]" />';
				echo $row['first_name'];
				echo ' '.$row['last_name'];
				echo ' '.$row['email'].'<br />';
			}
		?>
    	<label for="subject">Subject: </label><br />
        <input type="text" id="subject" name="subject" value="<?php echo $subject; ?>" /><br /> <!--信息填寫錯誤時仍在表格中留有填寫的數據-->
        <label for="body">Body: </label><br />
        <textarea id="body" name="body" rows="8" cols="60"><?php echo $body; ?></textarea><br /><!--同上-->
        <input type="submit" name="submit" value="Send" />
    </form>
    	<?php
			}
		?>
</body>
</html>
代碼下載:http://download.csdn.net/detail/qq_17615475/9384957
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章