[reglé]Problème Undefined offset

WRInaute occasionnel
Bonjour à tous ,

je rencontre un petit problème sur ma requete j'obtiens undefined offset à plusieurs reprises voici mon code :

Code:
<? 
include ('connexion.php');

for ($i = 0; $i < sizeof($_POST['id']); $i++) { 
 $sql = "INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('" . $_POST['id'][$i] . "', '$magasin', '" . $_POST['versement'][$i] . "', '" . $_POST['cmdmonnaie'][$i] . "', '" . $_POST['rbtmonnaie'][$i] . "', '" . $_POST['validation'][$i] . "'')" ; 
} 
?>

et voici ce que me retourne echo $sql :

Code:
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('2102008', 'SPF', '2534.25', '', '', 'oui'')
Notice: Undefined offset: 1 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('6102008', 'SPF', '3584.10', '', '', ''')
Notice: Undefined offset: 2 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('9102008', 'SPF', '4562.30', '2545', '', ''')
Notice: Undefined offset: 3 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('13102008', 'SPF', '5800', '', '', ''')
Notice: Undefined offset: 4 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('16102008', 'SPF', '', '', '', ''')
Notice: Undefined offset: 5 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('20102008', 'SPF', '', '', '', ''')
Notice: Undefined offset: 6 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('23102008', 'SPF', '', '', '', ''')
Notice: Undefined offset: 7 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('27102008', 'SPF', '', '', '2500', ''')
Notice: Undefined offset: 8 in c:\program files\easyphp1-8\www\ramassage\validation.php on line 16
INSERT INTO ramassage_data (id,magasin,versement,cmdmonnaie,rbtmonnaie,validation ) VALUES ('30102008', 'SPF', '', '', '', ''')

Pouvez vous m'aiguiller?

Merci
 
WRInaute accro
L'un de tes champs $_POST[quelquechose][$i] n'est pas défini pour $i > 0? Mon petit doigt penche pour "validation".

Au passage, on ne passe JAMAIS directement des valeurs obtenues d'un POST ou GET à un serveur SQL. On les vérifie et on les filtre (escape) avant, sinon tu vas te retrouver victime d'attaques par injection SQL super sympa. N'importe qui peut vider toutes tes tables sans rien de demander, par exemple.

Jacques.
 
Discussions similaires
Haut