par
Invité » 22 déc. 2007, 16:43
je n'ai pas réussi à inserer des name à mes imput comme vous me l'aviez consseillé :
car mes name d'input étaient déjà appelés par une bdd :
Code : Tout sélectionner
<INPUT size="10" NAME ="<?php echo mysql_field_name($a, 1)?> VALUE="<?php echo $record[1]?>">
mais j'ai trouvé une solution pour ajouter une variable qui s'incrémente dans la boucle et que j'ajoute à la fin de chacun des names de mes input:
la boucle
Code : Tout sélectionner
<?php $idfil = 1; while ($record = mysql_fetch_row($a)) { $idfil++ ?>
et les input:
Code : Tout sélectionner
<INPUT size="3" type=hidden NAME ="<?php echo mysql_field_name($a, 0), $idfil ?>"
je me retrouve donc avec un _POST contenant des name type: numinci1, date1, datefi1, com1, check2, numinci2, date2, datefi2, com2, check2.
J'ai une checkbox à chaque finde ligne à selectionner deselectionner si je veux modifier ou non le champ selectionné.
comment je pourrais adapter ta boucle à mon script d'insertion qui est à la base :
Code : Tout sélectionner
$dbh = mysql_connect('localhost','root', '');
mysql_select_db('TRESORERIE', $dbh);
############################################
#########Supp, Mod, Ajout ou rien ##########
for ($x=0; $x=count($_POST["id2"]); $x++) {
if (isset($_REQUEST['DELETE'])) {
$id = $_REQUEST['id'];
$sql = "DELETE FROM incitresorerie WHERE id = $id";
} elseif (isset($_REQUEST['UPDATE'])) {
$id = $_REQUEST['id2'];
$numinci = $_REQUEST['numinci2'];
$etainci = $_REQUEST['etainci2'];
$date = $_REQUEST['date2'];
$datefi = $_REQUEST['datefi2'];
$fili1 = $_REQUEST['fili12'];
$fili2 = $_REQUEST['fili22'];
$fili3 = $_REQUEST['fili32'];
$refeinci = $_REQUEST['refeinci2'];
$flux = $_REQUEST['flux2'];
$heureinci = $_REQUEST['heureinci2'];
$heuretrait = $_REQUEST['heuretrait2'];
$commentaires = addslashes($_REQUEST['commentaires2']);
$sql = "UPDATE incitresorerie SET numinci = '$numinci', ";
$sql = $sql . "etainci = '$etainci', ";
$sql = $sql . "date = '$date', ";
$sql = $sql . "datefi = '$datefi', ";
$sql = $sql . "fili1 = '$fili1', ";
$sql = $sql . "fili2 = '$fili2', ";
$sql = $sql . "fili3 = '$fili3', ";
$sql = $sql . "refeinci = '$refeinci', ";
$sql = $sql . "flux = '$flux', ";
$sql = $sql . "heureinci = '$heureinci', ";
$sql = $sql . "heuretrait = '$heuretrait', ";
$sql = $sql . "commentaires = '$commentaires' ";
$sql = $sql . "WHERE id = $id";
} elseif (isset($_REQUEST['INSERT'])) {
$numinci = $_REQUEST['numinci'];
$etainci = $_REQUEST['etainci'];
$date = $_REQUEST['date'];
$datefi = $_REQUEST['datefi'];
$fili1 = $_REQUEST['fili1'];
$fili2 = $_REQUEST['fili2'];
$fili3 = $_REQUEST['fili3'];
$refeinci = $_REQUEST['refeinci'];
$flux = $_REQUEST['flux'];
$heureinci = $_REQUEST['heureinci'];
$heuretrait = $_REQUEST['heuretrait'];
$commentaires = addslashes($_REQUEST['commentaires']);
$sql = "INSERT INTO incitresorerie(id, numinci, etainci, date, datefi, fili1, fili2, fili3, refeinci, flux, heureinci, heuretrait, commentaires) ";
$sql = $sql . " VALUES ('','$numinci', '$etainci', '$date','$datefi','$fili1','$fili2','$fili3','$refeinci','$flux', '$heureinci',
'$heuretrait','$commentaires') ";
}
if (isset($sql))
{
$a = mysql_query($sql);
if ($a)
{
$num = mysql_affected_rows($dbh);
$message = "$num enregistrement(s) mis à jour";
}
else
{
$message = "Erreur: " . mysql_error();
}
?>
<?php }
// On parcourt la table de incitresorerie
$sql = "SELECT * from incitresorerie ORDER BY id DESC
LIMIT 20";
$a = mysql_query($sql);
$num = mysql_num_fields($a);
?>
je n'ai pas réussi à inserer des name à mes imput comme vous me l'aviez consseillé :
[code]<input name="banane[]"><input name="Contenu[]">[/code]
car mes name d'input étaient déjà appelés par une bdd :
[code]<INPUT size="10" NAME ="<?php echo mysql_field_name($a, 1)?> VALUE="<?php echo $record[1]?>"> [/code]
mais j'ai trouvé une solution pour ajouter une variable qui s'incrémente dans la boucle et que j'ajoute à la fin de chacun des names de mes input:
la boucle [code]<?php $idfil = 1; while ($record = mysql_fetch_row($a)) { $idfil++ ?>
[/code]
et les input:
[code]<INPUT size="3" type=hidden NAME ="<?php echo mysql_field_name($a, 0), $idfil ?>" [/code]
je me retrouve donc avec un _POST contenant des name type: numinci1, date1, datefi1, com1, check2, numinci2, date2, datefi2, com2, check2.
J'ai une checkbox à chaque finde ligne à selectionner deselectionner si je veux modifier ou non le champ selectionné.
comment je pourrais adapter ta boucle à mon script d'insertion qui est à la base :
[code]$dbh = mysql_connect('localhost','root', '');
mysql_select_db('TRESORERIE', $dbh);
############################################
#########Supp, Mod, Ajout ou rien ##########
for ($x=0; $x=count($_POST["id2"]); $x++) {
if (isset($_REQUEST['DELETE'])) {
$id = $_REQUEST['id'];
$sql = "DELETE FROM incitresorerie WHERE id = $id";
} elseif (isset($_REQUEST['UPDATE'])) {
$id = $_REQUEST['id2'];
$numinci = $_REQUEST['numinci2'];
$etainci = $_REQUEST['etainci2'];
$date = $_REQUEST['date2'];
$datefi = $_REQUEST['datefi2'];
$fili1 = $_REQUEST['fili12'];
$fili2 = $_REQUEST['fili22'];
$fili3 = $_REQUEST['fili32'];
$refeinci = $_REQUEST['refeinci2'];
$flux = $_REQUEST['flux2'];
$heureinci = $_REQUEST['heureinci2'];
$heuretrait = $_REQUEST['heuretrait2'];
$commentaires = addslashes($_REQUEST['commentaires2']);
$sql = "UPDATE incitresorerie SET numinci = '$numinci', ";
$sql = $sql . "etainci = '$etainci', ";
$sql = $sql . "date = '$date', ";
$sql = $sql . "datefi = '$datefi', ";
$sql = $sql . "fili1 = '$fili1', ";
$sql = $sql . "fili2 = '$fili2', ";
$sql = $sql . "fili3 = '$fili3', ";
$sql = $sql . "refeinci = '$refeinci', ";
$sql = $sql . "flux = '$flux', ";
$sql = $sql . "heureinci = '$heureinci', ";
$sql = $sql . "heuretrait = '$heuretrait', ";
$sql = $sql . "commentaires = '$commentaires' ";
$sql = $sql . "WHERE id = $id";
} elseif (isset($_REQUEST['INSERT'])) {
$numinci = $_REQUEST['numinci'];
$etainci = $_REQUEST['etainci'];
$date = $_REQUEST['date'];
$datefi = $_REQUEST['datefi'];
$fili1 = $_REQUEST['fili1'];
$fili2 = $_REQUEST['fili2'];
$fili3 = $_REQUEST['fili3'];
$refeinci = $_REQUEST['refeinci'];
$flux = $_REQUEST['flux'];
$heureinci = $_REQUEST['heureinci'];
$heuretrait = $_REQUEST['heuretrait'];
$commentaires = addslashes($_REQUEST['commentaires']);
$sql = "INSERT INTO incitresorerie(id, numinci, etainci, date, datefi, fili1, fili2, fili3, refeinci, flux, heureinci, heuretrait, commentaires) ";
$sql = $sql . " VALUES ('','$numinci', '$etainci', '$date','$datefi','$fili1','$fili2','$fili3','$refeinci','$flux', '$heureinci',
'$heuretrait','$commentaires') ";
}
if (isset($sql))
{
$a = mysql_query($sql);
if ($a)
{
$num = mysql_affected_rows($dbh);
$message = "$num enregistrement(s) mis à jour";
}
else
{
$message = "Erreur: " . mysql_error();
}
?>
<?php }
// On parcourt la table de incitresorerie
$sql = "SELECT * from incitresorerie ORDER BY id DESC
LIMIT 20";
$a = mysql_query($sql);
$num = mysql_num_fields($a);
?>
[/code]