cs_killersources
Messages postés2Date d'inscriptionjeudi 15 février 2007StatutMembreDernière intervention19 août 2010
-
15 août 2010 à 18:47
cs_killersources
Messages postés2Date d'inscriptionjeudi 15 février 2007StatutMembreDernière intervention19 août 2010
-
19 août 2010 à 17:16
Bonjour,
Voilà j'ai un petit soucis, j'aimerais pouvoir faire un nouvel enregistrement dans une table et en même temps un update d'une autre table.
Séparement ça fonctionne bien, mais comme ça y en a que une des requêtes qui s'effectue.
Quelqu'un peut-il m'éclairer?
Merci pour votre aide
<?php
if (empty($_REQUEST['numrapport']) || empty($_REQUEST['client']) || empty($_REQUEST['date']) || empty($_REQUEST['quantite']) || empty($_REQUEST['refri']) || empty($_REQUEST['bouteille']) )
die ("ERREUR : Veuillez remplir tous les champs ");
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 16 août 2010 à 11:26
Salut,
Deux raisons pour laquelle tu n'en exécute qu'une seule :
1. Lorsque tu assigne la seconde requête à la variables $sql, tu écrase la première. Afin d'éviter ça il te faut utiliser la concaténation. A noter qu'on sépare les différentes requêtes pour un point-virgule.
2. Même si ta variable contenais les deux requêtes, mysql_query() envoie une seule requête. Il faut prendre ça comme une sécurisation qui permet de limiter les ravages causés par une injection SQL (un SELECT restera un SELECT, impossible de le finir avec le point virgule et d'ajouter des requêtes DROP, INSERT, DELETE, UPDATE etc à la suite).
Soit dit en passant, ton code est vulnérable aux injections SQL, tu devrais corriger ceci au plus vite.