Bonjour tout le monde,
Je souhaiterais développer un programme pour la réservation de chauffeurs et lors de la demande de réservation je souhaiterais ne pas accepter les demandes dont les chauffeurs ne sont pas disponibles.
Pour faire cela, j'ai créé une fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public function getFree (string $startField, string $endFiled) {
define('DB_HOST', '127.0.0.1');
define('DB_NAME', 'test');
define('DB_USER', 'root');
define('DB_PWD' , '');
$pdo    = new PDO('mysql:host='.DB_HOST.'; dbname='.DB_NAME,DB_USER,DB_PWD, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
 
    $start = DateTime::createFromFormat('Y-m-d H:i:s', $this->data[$startField]);
    $end = DateTime::createFromFormat('Y-m-d H:i:s', $this->data[$endFiled]);
 
$sql = " SELECT * FROM events
      WHERE ( end  BETWEEN '{$start}' AND '{$end}' ) OR ( start <='{$start}' AND end >='{$end}' ) OR ( start >='{$start}' AND end <='{$end}' )
   ";
 
$sth    = $pdo->prepare($query);
$sth->execute(); 
$resultat =  $sth->rowCount();
       if ($resultat != 0) {
        $this->errors[$startField] = "Ce temps est déjà pris";
        return false;
       }
       return true;
   }

Lors de l'exécution j'ai ce message :
Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1065 Query was empty
Quel'qu'un pourrait me dire pourquoi ?
Merci d'avance