[reglé]Problème Undefined offset

  • Auteur de la discussion Auteur de la discussion webac
  • Date de début Date de début
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.
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut