Code en PHP

Fermé
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 - 17 nov. 2008 à 08:59
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 - 17 nov. 2008 à 13:33
Bonjour,
J'ai un formulaire ci-dessous:
<form name="form1" method="POST" actio="add_mobilier.php">
<table width="200" border="1">
<div align="center"><span class="Style5">MOBILIER DE BUREAU</span></div>
<tr>
<th>Numero d'Inventaire</th>
<th>Désignation</th>
<th>Forme</th>
<th>Spécificité</th>
</tr>
<tr>
<td><input type="text" size="20" value="" name="num1[0]" /></td>
<td><input type="text" size="15" value="" name="designation1[0]" /></td>
<td><input type="text" size="15" value="" name="forme1[0]" /></td>
<td><select name="specificite[0]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[1]" type="text" size="20" /> </td>
<td><input name="designation[1]" type="text" size="15" /></td>
<td><input name="forme[1]" type="text" size="15" /></td>
<td><select name="specificite[1]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[2]" type="text" size="20" /></td>
<td><input name="designation[2]" type="text" size="15" /></td>
<td><input name="forme[2]" type="text" size="15" /></td>
<td><select name="specificite[2]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option> </select>
</td>
</tr>
<tr>
<td><input name="num[3]" type="text" size="20" /></td>
<td><input name="designation[3]" type="text" size="15" /></td>
<td><input name="forme[3]" type="text" size="15" /></td>
<td><select name="specificite[3]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[4]" type="text" size="20" /></td>
<td><input name="designation[4]" type="text" size="15" /></td>
<td><input name="forme[4]" type="text" size="15" /></td>
<td><select name="specificite[4]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
</table>
</form>
Mon pbm est sur le code d'insertion càd dans la page add_mobilier.php j'ai comme ceci:
<?php
require_once("connexion.php");
for ($i=0; $i<5;)
{
// declaration de la variable dans le table mobilier de bureau
$V=htmlentities(addslashes($_POST['num[i]']));

$D=htmlentities(addslashes($_POST['designation[i]']));
$F=htmlentities(addslashes($_POST['forme[i]']));
$S=htmlentities(addslashes($_POST['specificite[i]']));
//--->
// insertion des données dans la table mobilier de bureau
$bureau="insert into mobilier_bureau values ('$M','$V', '$D', '$F','$S')";
mysql_query($bureau) or die(mysql_error());
echo "<p><font face='Arial' size='3'><center>L'enregistrement du mobilier de bureau est bien faite</center></font></p>";
//--->
}
?>
Ce code la ne marche pas.
Eske quelq'un qui a une idée pour me resoudre mon pbm, je vous remercie d'avance.
Bonne journee.
A voir également:

7 réponses

Bonjour

Ce code la ne marche pas
C'est vague... Qu'est-ce qui ne marche pas ? des messages d'erreur ? lesquels ? Un fonctionnement qui n'est pas celui que tu attends ?
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100
17 nov. 2008 à 10:07
Salut,

Apparemment il manque un truc la
for ($i=0; $i<5;) 

qq chose comme
for ($i=0; $i<5;$i++) 

Par exemple
0
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 12
17 nov. 2008 à 10:17
Pour me repondre au Toto,
Mon pbm est sur le code d'INSERT INTO si je fait l'enregistrement , il ne fais rien càd il n'enregistre pas les données à saisir sur le formulaire dans sa table de la base de donnée.
Merci d'avance.
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
17 nov. 2008 à 11:12
Bonjours,

qqs erreurs

<?php
require_once("connexion.php");
for ($i=0; $i<5;$i++)//il te manque l'incrementation 
{
// declaration de la variable dans le table mobilier de bureau
$M="";//tu insert une valeur $M qui n'est pas définie ni chargée nulle part
//tu utilises la boucle sur une variable $i, il faut donc dans la boucle mettre $i et pas i
$V=htmlentities(addslashes($_POST['num[$i]']));

$D=htmlentities(addslashes($_POST['designation[$i]']));
$F=htmlentities(addslashes($_POST['forme[$i]']));
$S=htmlentities(addslashes($_POST['specificite[$i]']));
//--->
// insertion des données dans la table mobilier de bureau
//essayes sous cette forme et en mettant les parties en majuscules c'est plus parlant n'est pas !
$bureau="INSERT INTO mobilier_bureau VALUES ('."$M."','."$V."', '".$D."', '".$F."','".$S."')";
mysql_query($bureau) or die(mysql_error()); 

etc....
0
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100 > Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017
17 nov. 2008 à 11:38
A mon avis, petite erreur de frappe:
Plutôt
$bureau="INSERT INTO mobilier_bureau VALUES ('".$M."','".$V."', '".$D."', '".$F."','".$S."')";
à la place de
$bureau="INSERT INTO mobilier_bureau VALUES ('."$M."','."$V."', '".$D."', '".$F."','".$S."')";
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894 > Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015
17 nov. 2008 à 11:44
oui effectivement

petites erreurs de frappe, en voulant faire vite n'est ce pas ?
0
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 12
17 nov. 2008 à 13:03
Merci pour vous de me repondre mais on a encore de pbm: si je fais corrige mon ereur, on a un nouvel erreur. Voici l'erreur:
Notice: Undefined index: num[$i] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 52

Notice: Undefined index: designation[$i] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 53

Notice: Undefined index: forme[$i] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 54

Notice: Undefined index: specificite[$i] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 55
Duplicata du champ '' pour la clef 1.
ESke je mets le boucle for aussi dans le formulaire pour saisir les données ou non?
Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dr Zoidberg Messages postés 529 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 12 juin 2015 100
17 nov. 2008 à 13:14
Il faudrait remplacer les 4 appels à post:
$_POST['num[$i]']
par
$_POST["num[$i]"]

et comme le dit Alain tu ne mets rien dans $M qui est (peut-être ?) la clé.
0
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 12
17 nov. 2008 à 13:28
Merci sur ta reponse mais il a encore des erreurs comme ceci:
Notice: Undefined index: num[0] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 52

Notice: Undefined index: designation[0] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 53

Notice: Undefined index: forme[0] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 54

Notice: Undefined index: specificite[0] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 55



Notice: Undefined index: num[1] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 52

Notice: Undefined index: designation[1] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 53

Notice: Undefined index: forme[1] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 54

Notice: Undefined index: specificite[1] in c:\program files\easyphp1-8\www\essai\ajout_fiche.php on line 55

Dans le formulaire esk'on ppeut faire de boucle for pour créer la ligne dans ce tableau ou non.
Merci d'avance
0
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 12
17 nov. 2008 à 13:33
Voici le code dans le formulaire d'insertion:
<form method="POST" action="add_mobilier.php">
<table width="200" border="1">
<div align="center"><span class="Style5">MOBILIER DE BUREAU</span></div>
<tr>
<th>Numero d'Inventaire</th>
<th>Désignation</th>
<th>Forme</th>
<th>Spécificité</th>
</tr>
<tr>
<td><input type="text" size="20" value="" name="num[0]" /></td>
<td><input type="text" size="15" value="" name="designation[0]" /></td>
<td><input type="text" size="15" value="" name="forme[0]" /></td>
<td><select name="specificite[0]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[1]" type="text" size="20" /> </td>
<td><input name="designation[1]" type="text" size="15" /></td>
<td><input name="forme[1]" type="text" size="15" /></td>
<td><select name="specificite[1]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[2]" type="text" size="20" /></td>
<td><input name="designation[2]" type="text" size="15" /></td>
<td><input name="forme[2]" type="text" size="15" /></td>
<td><select name="specificite[2]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option> </select>
</td>
</tr>
<tr>
<td><input name="num[3]" type="text" size="20" /></td>
<td><input name="designation[3]" type="text" size="15" /></td>
<td><input name="forme[3]" type="text" size="15" /></td>
<td><select name="specificite[3]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num[4]" type="text" size="20" /></td>
<td><input name="designation[4]" type="text" size="15" /></td>
<td><input name="forme[4]" type="text" size="15" /></td>
<td><select name="specificite[4]">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr><td><input type="submit" value="Ajouter"></td></tr>
</table>
</form>
Esk'on peut faire ça ou se construit avec un boucle for.
Merci beaucoup
0