Pbm de code

Fermé
joella Messages postés 112 Date d'inscription mercredi 13 février 2008 Statut Membre Dernière intervention 2 juin 2009 - 7 nov. 2008 à 08:13
 vudunet - 7 nov. 2008 à 08:50
Bonjour,
Je cree un formulaire qui a un table contenant de 4 colonnes et de 5
lignes avec un bouton submit ajouter. Avant de cliquer sur le bouton ajouter, je fais completer tous les champs dans les dix lignes. Ces champs sont des differents. Voir ceci le code:
<form name="monform" method="post" action="ajout.php">
<table width="200" border="1">
<div align="center"><span class="Style5">MOBILIER DE BUREAU</span></div>
<tr>
<th>Numero d'Inventaire</th>
<th>Designation</th>
<th>Forme</th>
<th>Specificite</th>
</tr>
<tr>
<td><input type="text" size="20" value="" name="num1" /></td>
<td><input type="text" size="15" value="" name="designation1" /></td>
<td><input type="text" size="15" value="" name="forme1" /></td>
<td><select name="specificite1">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num2" type="text" size="20" /> </td>
<td><input name="designation2" type="text" size="15" /></td>
<td><input name="forme2" type="text" size="15" /></td>
<td><select name="specificite2">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num3" type="text" size="20" /></td>
<td><input name="designation3" type="text" size="15" /></td>
<td><input name="forme3" type="text" size="15" /></td>
<td><select name="specificite1">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option> </select>
</td>
</tr>
<tr>
<td><input name="num4" type="text" size="20" /></td>
<td><input name="designation4" type="text" size="15" /></td>
<td><input name="forme4" type="text" size="15" /></td>
<td><select name="specificite4">
<option>Bois</option>
<option>Cuir</option>
<option>Métallique</option>
<option>Plastique</option></select>
</td>
</tr>
<tr>
<td><input name="num5" type="text" size="20" /></td>
<td><input name="designation5" type="text" size="15" /></td>
<td><input name="forme5" type="text" size="15" /></td>
<td><select name="specificite5">
<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>
Mon pbm est de creer la requete pour faire l'insertion des donnees de 5 lignes dans la table correspondant?
Eske qlqi a une idee, je vous remercie d'avance.
Merci a tous
Bonne journee
A voir également:

1 réponse

Bonjour,
Je sais pas si c'est tout a fait exact, je n'ai pas le temps de tester mais si ça peut te donner une piste :

//Moi je ferais ça :

function IssetAndEmpty($var)
{
$ret = false ;
if(!isset($var)
{
return $ret ;
}
elseif(empty($var)
{
return $ret ;
}
else
{
$var = htmlentities(mysql_real_escape_string($var)) ;
$ret = $var ;
return $ret ;
}
}
//Récup des variables

$i = 1 ;
for($i, $i<=5, $i++)
{
if(IssetAndEmpty($_POST['num'.$i]) && IssetAndEmpty($_POST['designation'.$i]) && IssetAndEmpty($_POST['forme'.$i]) && IssetAndEmpty($_POST['specificite'.$i]))
{
$num.$i = $_POST['num'.$i] ;
$designation.$i = $_POST['designation'.$i] ;
$forme.$i = $_POST['forme'.$i] ;
$specificite.$i = $_POST['specificite'.$i] ;
//la requete
$sql = mysql_query("INSERT INTO 'ta_table' VALUES('".$num.$i."', '".$designation.$i."', '".$forme.$i."', '".$specificite.$i."') WHERE ta_condition/ou pas LIMIT 1") or die(mysql_error()) ;
}
if(mysql_num_rows($sql)!=false)
{
echo 'Insertion OK' ;
mysql_close() ;
exit() ;
}


Voila, surement beaucoup d'optimisation à faire mais ça peut te servir de base.

Amicalement.
0
Je me répond à moi même :

Dans la boucle for, a la place de $i<=5. mettre plutôt $i=5.

Bien à toi.
0