2017-04-23 3 views
0

Y a-t-il une différence entre cette requête?Quelle est la différence entre cette requête 3

requête 1

$query = "INSERT INTO reserve(c_id, c_username, r_id, r_name, checkin, checkout)"; 
$query .= " VALUES ($c_id, $c_username, $r_id, $r_name, $checkin, $checkout)"; 

requête 2

$sql = "INSERT INTO reserve(c_id, c_username, r_id, r_name, checkin, checkout) 
VALUES ('$c_id' , '$c_username', '$r_id', '$r_name', '$checkin', '$checkout')"; 

requête 3

$result = $mysqli->query("INSERT INTO reserve (c_id, c_username, r_id, r_name, checkin, checkout) VALUES ('$c_id' , '$c_username', '$r_id', '$r_name', '$checkin', '$checkout');") 

Et qui dois-je utiliser pour sélectionner les données de ma base de données et que dois-je utiliser insérer des données dans la base de données

+4

Aucun d'entre eux. Apprenez à utiliser les paramètres correctement pour transmettre des paramètres dans une requête. –

+1

Copie possible de [Comment puis-je empêcher l'injection SQL en PHP?] (Http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) – chris85

+0

@Gordon Linoff savoir où je peux apprendre au sujet de la requête ... w3school n'est pas cela aidant ....... Considérant que j'ai la connaissance zéro concernant la question de mysqli. Merci pour votre réponse – Adam

Répondre

0

Sur un coup d'œil rapide, ils semblent tous faire la même chose. Vous n'avez pas besoin d'apprendre le passage des paramètres à votre stade. Soyez conscient des attaques par injection et nettoyez ces variables avant de faire des appels.

J'ai tendance à faire pour une meilleure lisibilité:

$sql = "INSERT INTO reserve(c_id 
          ,c_username 
          ,r_id 
          ,r_name 
          ,checkin 
          ,checkout) 
        VALUES ('$c_id' 
          ,'$c_username' 
          ,'$r_id' 
          ,'$r_name' 
          ,'$checkin' 
          ,'$checkout')";