entrées multiple en base mysql

Répondre
adev
le 10/11/2004 à 10:25
adev
Bonjour,
j'ai dans mon formulaire la possibilité de mettre a jour les salaires des employés,la liste des employés se trouve dans une base de donnees mysql,
imaginons que j'ai 10 salariés,mon formulaire se presente comme ca:

Montant du salaire: ****

Choisir employés: (case a cocher)
employé 1
employé 2
...
employé 10

je voudrais que le salaire soit modifier pour les employés selectionnés, donc je veux affecter la valeur saisie dans plusieurs champ,
est-ce possible, j'espere que vous comprendrez
merci
zebden
le 10/11/2004 à 11:16
zebden
dans ta balise checkbox tu précise le name en tant que tableau => name="employe[]" et comme valeur leur identifiant.

à la recup $_POST['employe'] te retournera donc un tableau avec les identifiants dedans.
zebdinou pour les intimes / Blog : http://www.zebden.fr
adev
le 10/11/2004 à 11:51
adev
je n'y arrive pas, qu'est-ce qui ne va pas dans mon code?
page de formulaire:
<html>
<head>
<title>post</title>
</head>

<body>


<? include "connection.php";


if ($connect){

//connexion reussie
//création de la requête
echo "<FORM action='emp_2.php' method='POST'>";



echo '<br><br>montant salaire: <input type=text name="sal" size=40>';
echo '<br><br><br>';
$query="select * from employe";
$result=mysql_query($query) or die(mysql_error());


//résultat de la requête dans la liste déroulante
echo '<table width="30%" border="0">';
while($row = mysql_fetch_array($result)){
echo "<tr><td><input type='checkbox' name='emp[]' value='$row[0]'>$row[1]</td>
</tr>";

}

echo '</table>';

echo '<p><input type="submit" name="valid" value="Continuer" >';
echo '<br><input type="reset" value="effacer"></p>';
echo '</form>';

}
else echo "problème à la connexion <br>";

mysql_close($connect);

?>

</body>

</html>

et voici la page de resultat:

<html>
<head>
<title>test ajout</title>

</head>

<body>
<? include "connection.php";


$nb = 0;
$euro = $_POST['sal'];
$nom = $_POST['emp'];

if ($connect){

$query="select montant from salaire";
$result= mysql_db_query($bdd, $query, $connect) or die(mysql_error());
if (mysql_fetch_row($result)){

while($row = mysql_fetch_row($result)){
if ($row[0] == $nom)
{
$nb = 1;
}
}
if ($nb == 0)
{
$query="insert into salaire ('montant','nom') values('$euro','$nom')";
$result= mysql_db_query($bdd, $query, $connect);

echo"c'est bon!";

}
else
echo "c'est pas bon";
}
}
else

echo "problème à la connexion<br>";
mysql_close($connect);

?>
</body>

</html>

peux-tu m'aider?
merci

Note de zebden : Merci d'utiliser le bccode et les balise code pour une plus grande clareté à la lecture

[Message modifié le 10/11/2004 à 12:03 par zebden]
zebden
le 10/11/2004 à 12:06
zebden
Parce que Nom c'est un tableau ... donc regarde la notion de tableau Array();

et tu as print_r($_POST['emp']) pour un visuel du tableau ou var_dump()
zebdinou pour les intimes / Blog : http://www.zebden.fr
adev
le 10/11/2004 à 13:47
adev
je n'ai pas réussi à adapter le code à mon cas,
comment fais tu?
merci
zebden
le 10/11/2004 à 14:50
zebden
Tout depends ce que tu veux faire , si tu veux faire un enregistrement par id recuperer ou bien inserer toutes les ids contenus dans le tableau dans un seul champs separer par un separateur.

Moi je te conseille d'aller voir du coté des array pour que tu comprenne la notion de tableau , une fois assimilée tu n'aura aucun probleme a mettre en place ce que tu veux.
zebdinou pour les intimes / Blog : http://www.zebden.fr
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours