0

こんにちは、前のページのチェックボックスを使用して選択された予約スロット時間をデータベースに追加する機能を作成しました。同時に、スロット時間が保存され、メール機能のページの下で使用できるようになります。

$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.";

予約時間の印刷は問題ありませんが、予約番号の結果が得られません...誰かが間違っている場所を正しい方向に向けることができますか?

4

3 に答える 3

1

$appno = $row3['Appointment_No.'];

毎回 $appno 変数を再初期化します。したがって、4 つの値が含まれることはありません$appno[]。そのために使用します。

また、何$row3['Appointment_No.']ですか?フィールドだと思いauto_incrementますが、コメントで指摘されているように、その期間.はありません。多分タイプミス?

于 2013-03-06T12:37:54.270 に答える
0

私が見るように、あなたは二重引用符 (") を使用しており、配列 =D は好きではありません。次のように中括弧内に配列変数を入れます。

{$appno[0]}

仕事をしなければならない=)

于 2013-03-06T12:35:13.307 に答える
0

$appno の代わりに $appno[] を使用する

于 2013-03-06T12:37:08.047 に答える