0
ユーザーが選択した日付に従って予約を追加すると、この日付に前の予約がない場合、私の関数add()によって検証されます。私はFROM(ymd)フィールドとHASTA(Ymd)フィールドを持つ予約テーブルを持っていますが、check_in_range関数($ start_date、$ end_date、$ date_to_valuate)を使用すると思います これは私がやろうとしていることですが、そして今、私はこれが機能check_in_range()関数を使用して日付を比較する必要があります
0のコードで、これは私の関数は私のreservationscontroller.phppublic function add()
{
$reserva = $this->Reservas->newEntity();
$res = 'SELECT desde,hasta FROM reservas';
$arr = $this->Reservas->ExQuery($res);
if ($this->request->is('post')) {
$reserva = $this->Reservas->patchEntity($reserva, $this->request->getData());
if($arr==null){
// $this->log('keria salvar1', LOG_DEBUG);
if ($this->Reservas->save($reserva)) {
//$this->log('salvas con arreglo vacio', LOG_DEBUG);
$this->Flash->success(__('La habitación ha sido reservada.'));
return $this->redirect(['controller' => 'reservas', 'action' => 'index']);
}}
if($arr!=null){
for ($i = 0; $i < count($arr); $i++) {
$start_date = $arr[$i]['desde'];
$end_date = $arr[$i]['hasta'];
$fecha_a_evaluar = date("Y-m-d");
if ($this->check_in_range($start_date, $end_date, $fecha_a_evaluar)) {
// $this->log('error fecha', LOG_DEBUG);
$this->Flash->error(__('ya existe reserva en esa fecha'));
}
if ($this->Reservas->save($reserva)) {
// $this->log('salvo', LOG_DEBUG);
$this->Flash->success(__('La habitación ha sido reservada.'));
return $this->redirect(['controller' => 'reservas', 'action' => 'index']);
}
}}
$this->Flash->error(__('La habitación no ha podido ser reservada'));
// $this->log('final1', LOG_DEBUG);
}
// $this->Flash->error(__('La habitación no ha podido ser reservada'));
//$this->log('final2', LOG_DEBUG);
$habitaciones = $this->Reservas->Habitaciones->find('list', ['limit' => 200]);
$this->set(compact('reserva', 'habitaciones'));
$this->set('_serialize', ['reserva']);
}
で、私のappcontrolerに()を追加されて迷ってしまいました
私は絶望的だと原因に