2016-12-31 1 views
0

それは奇妙です、多分私のせいです。今日私は自分のテストを開始し、彼らの2つの欠陥(昨日はありません)。このテストでは、いくつかの予約の管理日を使用しています。問題は、今日は31/12です。私はあなたのコードを紹介します:SQL Doctrineの年のイブ

​​

その方法は、私は予約が今日の日付を持っていることを確認した唯一の方法です。今日のこの失敗は31/12でしょうか?何か解決策がありますか? 申し訳ありませんが悪い英語、ありがとうございます。

+0

は、DBは、あなたが使用している追加してください使用する必要があり、名前空間に注意してください。エラーテキストを貼り付けます。 –

+0

@ LucioM.Tato私はMySqlを使用しています。私にはエラーはありませんが、私のテストの失敗です。このコードは今日の日付(31/12)の2つの予約を見つけましたが見つかりませんでした。昨日のテストでは、昨日(30/12) – NicolaPez

+0

の日付で2つの予約が見つかったと私は考えています "31. 12/31の問題には、" b.bookingDate> = CURRENT_DATE() とb.bookingDate <= CURRENT_DATE() 1/1 – NicolaPez

答えて

1
CURRENT_DATE()+1 

リターンはかなり間違っているように思わ

20161232 

。あなたは、PHPで日付を計算することができ

2017-01-01 
+0

今日は私のコードが動作し、私は31/10、31/12でバグが表示されないので、問題はあなたが思うものではないと推測します。しかし、私はこのDATE_ADD(CURRENT_DATE()、1、 'day')のような日付を挿入します – NicolaPez

2

を返し

DATE_ADD(CURRENT_DATE(), INTERVAL 1 DAY); 

$today = new DateTime('now'); 
$tomorrow = new DateTime('tomorrow'); 

$em = $this->getEntityManager(); 
$query = $em->createQuery(
      'SELECT b 
      FROM AppBundle:Booking b 
      WHERE b.bookingDate >= :today 
      AND b.bookingDate < :tomorrow 
      ORDER BY b.bookingDate ASC' 
); 

return $query->setParameters(array(
    'today' => $now->format('Y-m-d'), 
    'tomorrow' => $tomorrow->format('Y-m-d') 
))->getResult(); 

あなたが避けることができ、それはあなたが、それはこのことだろうしたいと働くようにする 方法var $bookingと結果を直接返します。 createQueryの末尾に;が見つかりませんでした。また、ORDERはORDER BYです。

はまた、多分あなたは new \DateTime('now');