0

こんにちは。以下のコードに問題がありますが、問題はありません。

ユーザーが入力した日付内の予定表からすべての予定を取得し、それらを表に表示しようとしています。構文エラーが発生します。

私のmysqlクエリは次のとおりです。

$result = mysql_query("SELECT * FROM appointment 
    WHERE Appointment_Date BETWEEN $fromDate AND $toDate 
    AND Practice_ID = '$prac' ORDER by Appointment_Time");
while ($row = mysql_fetch_array($result);
4

2 に答える 2

0

ここにブラケットがありません:

while ($row = mysql_fetch_array($result); // << 2 brackets needed at the end

また、セミコロンの代わりに、適切なwhileループが必要です。

while(...)
{
    // do something
}
于 2013-02-14T15:42:28.070 に答える
0

日付は一重引用符で囲み、

$result = mysql_query("
        SELECT  * 
        FROM   appointment 
        WHERE  Appointment_Date BETWEEN '$fromDate' AND '$toDate' 
               AND Practice_ID = '$prac' 
        ORDER  BY Appointment_Time");

補足として、変数のSQL Injection値が外部から取得された場合、クエリは脆弱です。予防方法については、以下の記事をご覧ください。を使用すると、値を一重引用符で囲む必要がなくなります。PreparedStatements

于 2013-02-14T15:38:05.173 に答える