2015-10-29 47 views
-1

我有一個html表格顯示特定的行,每行包含一個電子郵件ID。我在每一行的末尾都保留了一個check = box。因此,用戶可以檢查任何複選框並點擊「發送電子郵件」按鈕。提交電子郵件時,必須彈出'TO'字段中的所有選定電子郵件ID。點擊提交後,我無法獲得數組值php

截至目前,我正在嘗試將值存入數組,並試圖顯示它們。這是供我參考。之後,我想添加郵件發送功能。

但我的問題是,在選中某些複選框並單擊提交後,我所選的電子郵件未顯示。它直接在'else'中顯示內容,並說'沒有選擇電子郵件'。提前致謝。

我的HTML表格顯示頁面的代碼(的一部分)是

$i=-1; 
if($result222->num_rows > 0){ 
//echo '<table cellpadding="0" cellspacing="0" border="1" class="db-table">'; 
$rowcount=mysqli_num_rows($result222); 

echo '<table width="100%" id="tblData1" bgcolor="#FFFFFF" cellpadding="0" cellspacing="0" border="1" class="tablesorter" boarder-collapse ="collapse">'; 

echo '<thead><tr bgcolor = "#58B0EB"><th>STUDENT_NAME</th><th>ID_NUMBER</th><th>PHONE_NUMBER</th><th>BRANCH</th><th>YEAR</th><th>CONTACT_PERSON</th><th>EMAIL_ID</th><th>NOTES</th><th><form action="sendemail.php" method="POST"><br/><input id="chk" type="checkbox" name="sel_desel"> </th></tr></thead>'; 
while($rowz222 = mysqli_fetch_assoc($result222)){ 

echo "<tr>"; 



foreach($rowz222 as $key=>$value){ 


if($key=='ci_email') { 

$i=$i+1; 
echo '<td><a href="mailto:'.$value.'">'.$value.'</a></td>'; 
$email[]=$value; 

} 



else{ 
echo '<td>',$value,'</td>'; 



} 

} 
echo ''; 


echo '<td><input id="checkbox" type="checkbox" name="checklist[]" value=" ' .$email[$i]. '">'; 
echo $email[$i]; 

echo '</td>'; 

echo '</tr>'; 

echo '<input id="send" type="submit" name="sendemail" value="SEND_EMAIL">'; 
echo '</form>'; 

我在 'sendemail.php' 代碼

<?php 
    session_start(); 



     if(isset($_POST['checklist'])){ 

    $arr=$_POST['checklist']; 



     echo "The following email addresses have been selected:<br />"; 

      foreach($arr as $selected) 
      { 
       echo $selected; 

      } 




     } 


    else { 
    echo 'no emails selected'; 
    } 
?> 
+0

您錯過了表單元素 – Marcin

+0

@MarcinC。我的壞Marcin。由於錯誤,我沒有將它們包含在上面的代碼中。我有echo''; echo'';在我的代碼 – Sid

+0

窗體打開的動作?請編輯您的問題 – inetphantom

回答

1

只需在「sendemail.php session_start();後添加if(isset($_POST['sendemail'])){ '頁面。它的工作。