Hallo,
Ik loop vast met mijn if statement in mijn controller.
Dit is wat er moet gebeuren:
Ik heb een formulier met een input email en ordernummer gemaakt en een alertbox met ajax jquery.
Vervolgens als het ordernummer niet 12345 is dan moet ik de status = false meegeven aan de data.
Dit is de opdracht dus mijn volgende stap die ik moet maken.
$order->fetch() in mijn code die returnt true of false op basis of er een row is gevonden.
Status moet true zijn als er wat gevonden is(Als ik de juiste gegevens heb ingevuld).
Als het niet gevonden is moet de status false zijn.(Als ik niet de juiste gegevens heb ingevuld).
Code ziet er als volg uit:
<?
if (isset($_POST['email'])){
$gegevens = array('status'=> false,);
$order = new Order();
$order->set_query("SELECT orders.* FROM orders INNER JOIN users ON orders.user_id = users.id WHERE email = :email AND order_hash = :order_hash", false);
$order->bind('email', $_POST['email']);
$order->bind('order_hash', $_POST['order-hash']);
Zeker weten dat de status ook op false staat als het record niet bestaat?
Ik had verwacht dat je op zijn minst rowCount() o.i.d. moest gebruiken. Maar zoals ik al zei ben ik niet bekend met PDO, maar het verbaast mij wel ;-)
Het is ergens wel logisch, want als een query geen resultaat heeft zal een fetch false opleveren. Als er wel een resultaat is heb je er opeens een record instaan, wat niet gewenst is. Ik zou toch eens kijken naar het aantal records of de query zo aanpassen dat deze zelf telt.