Jest to mój pierwszy post na tym forum, dlatego bardzo przepraszam jeśli się pomyliłem z wyborem.
Moje pytanie jest następujące, mam problem z pobraniem wierszy przez PDO, mianowicie sytuacja wygląda następująco:
Zapytanie wykonane przez phpMyAdmin wykonuje się bez zarzutu i pobiera wszystkie rekordy, które chcę. Zapytanie wygląda następująco:
CODE
SELECT * FROM orders WHERE (coming_date AND leaving_date BETWEEN '2014-12-10' AND '2014-12-16') OR ('2014-12-10' AND '2014-12-16' BETWEEN coming_date AND leaving_date);
W momencie, kiedy chcę wykorzystać PDO w skrypcie:
CODE
$stmt = $this->_pdo->prepare("SELECT * FROM orders WHERE (coming_date BETWEEN :comingDate AND :leavingDate) AND (leaving_date BETWEEN :comingDate AND :leavingDate) OR (:comingDate AND :leavingDate BETWEEN coming_date AND leaving_date) ");
$stmt->bindValue(":comingDate", $_POST['coming_date'], PDO::PARAM_STR);
$stmt->bindValue(":leavingDate", $_POST['leaving_date'], PDO::PARAM_STR);
$stmt->execute();
$stmt->bindValue(":comingDate", $_POST['coming_date'], PDO::PARAM_STR);
$stmt->bindValue(":leavingDate", $_POST['leaving_date'], PDO::PARAM_STR);
$stmt->execute();
ilość rekordów się zgadza przy użyciu funkcji rowCount(). W momencie, kiedy chcę wyświetlić dane poprzez pętle foreach, pętla wyświetla rekordy, ale jeden jest notorycznie pomijany:
CODE
foreach($this->model->result as $row)
{
echo '<tr><td>'.$row['order_id'].'</td><td>'.$row['leaving_date'].'</td><td><a href = "view_room.php?roomid='.$row['room_id'].'">'.$row['room_name'].'</a></td><td>
'.$row['meal_info'].'</td><td>'.$row['first_meal'].'</td><td>'.$row['last_meal'].'</td><td>'.$row['people_number'].'</td><td>'.$row['ordered_room_prize'].'</td></tr>';
}
{
echo '<tr><td>'.$row['order_id'].'</td><td>'.$row['leaving_date'].'</td><td><a href = "view_room.php?roomid='.$row['room_id'].'">'.$row['room_name'].'</a></td><td>
'.$row['meal_info'].'</td><td>'.$row['first_meal'].'</td><td>'.$row['last_meal'].'</td><td>'.$row['people_number'].'</td><td>'.$row['ordered_room_prize'].'</td></tr>';
}
Nie mam zielonego pojęcia jak to ugryźć, próbowałem zmieniać zapytania, kopiować do innej tabeli itp. Efekt jest za każdym razem taki sam. Proszę o pomoc i dziękuję za cierplwiość w rozpatrywaniu mojego postu.
Pozdrawiam