【发布时间】:2013-02-21 05:59:48
【问题描述】:
您好,我创建了一个函数,将使用前一页上的复选框选择的预约时段添加到我的数据库中,同时存储时段 存储起来,以便它们可以在我的邮件功能页面的下方进一步使用。
$savedData = array();
foreach ($_POST as $key=>$value)
{ $key = mysql_real_escape_string($key);
echo($key. "<br>"); // show times selected on previous page
mysql_query("INSERT INTO appointment(Patient_ID, Appointment_Date, Appointment_Time
, Practice_ID, Appointment_ID)
VALUES('$patid','$insertdate','$key','$pracid','$apptype')");
//To save the variables for later:
$savedData[] = $key;
}
我现在需要使用用户选择的时间段来识别插入我的数据库时自动生成的约会号码,我尝试使用的代码如下:
$insertedapps = mysql_query("SELECT * FROM appointment
WHERE Appointment_Date='".$insertdate."'
AND Appointment_Time='".$key."'");
while($row3 = mysql_fetch_array($insertedapps))
{ $appno = $row3['Appointment_No.'];
}
邮件功能:
$to = "$pemail";
$subject = "Booking Confirmation";
$message = "Hello $pfname
This e-mail is to confirm your $appname appointment has been booked for the below times for $insertdate at the the following time(s) below:
Appointment No: Appointment Time:
$appno[0] $savedData[0]
$appno[1] $savedData[1]
$appno[2] $savedData[2]
$appno[3] $savedData[3]
The above appointment(s) are booked at the $pracname practice
Should you wish to alter this appointment please login via our customer login page or contact us on $pracphone";
$from = "xxxxx@xxxx.xxxx";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
约会时间打印得很好,但我没有得到约会号码的结果...有人能指出我哪里出错了吗?
【问题讨论】:
-
不确定这是否是您的问题的原因(认为我需要更多详细信息),但您似乎从约会表中获取了一行,然后遍历该行。所以 $appno[3] 可能是练习 id 而不是第三次约会
-
+1 表示最后的点和 []。我认为 PHP 必须为这两个抛出错误?
-
key 结尾的句号有效,还是字符串!在这里试试:codepad.org/Z9sLVBBw 但是对于 mysql 列,这是真的。
-
是的,对不起,你们是对的,该字段不是 Appointment_No。是 Appointment_No 我现在已经更改了这个,我得到了一些回报: Appointment No: Appointment Time: 3 14:00:00 8 14:15:00 3 14:30:00 14:45:00 约会号码不正确对于显示的时间,但 383 是实际的预约号。最后插入的约会@ 14:45:00
标签: php html mysql arrays foreach