[Php/Mysql] Données issues d'un FORM [Résolu/Fermé]

WzT - 6 févr. 2011 à 01:17 - Dernière réponse :  WzT
- 6 févr. 2011 à 18:06
Bonjour,

J'ai un formulaire qui envoie en POST deux Array à ma page de traitement.
Le premier contient des noms, et le second les adresses mails correspondantes.

Je voudrais pouvoir insérer dans ma base de donnée une entrée pour chacun de ses couples.

J'ai essayé ceci et cela me créé bien une entrée par noms, mais je ne sais pas comment faire pour insérer l'adresse associée.
Je pensais qu'il fallait aussi un forach pour les adresses mais je me suis cassé le nez dessus.

<?php
$nom=$_POST['nom'];
$adress=$_POST['adress'];



if($nom)
{
foreach($nom as $n)
{
if(strlen($n)>0)
{
mysql_query("INSERT INTO users VALUES('','$n','')");
echo '<h3>'.$n.'<h3/>';
}
}
}


?>

Quelqu'un peut il m'aider à modifier ce code?
Merci d'avance.
Afficher la suite 

5 réponses

rudak 587 Messages postés samedi 7 juin 2008Date d'inscription 4 juin 2011 Dernière intervention - 6 févr. 2011 à 10:25
0
Utile
le plus simple ca serait de créer un tableau associatif nan ?

$membre = array("nom" => "adresse","nom2" => "adresse2".......)

comme ca dans ton foreach tu met

foreach($membre as $nom => $adresse)
{
INSERT INTO users .....nom = $nom adresse=$adresse....
}
avion-f16 18236 Messages postés dimanche 17 février 2008Date d'inscriptionContributeurStatut 15 septembre 2017 Dernière intervention - 6 févr. 2011 à 11:50
0
Utile
Salut.

<?php
$names = $_POST['nom'];
$addresses = $_POST['adress'];


for($i = 0 ; $i < count($nom) ; $i++) {
    $name = mysql_real_escape_string($names[$i]);
    $address = mysql_real_escape_string($addresses[$i]);

    $sql = 'INSERT INTO users(name,address) VALUES('.$name.','.$address.')';
}
0
Utile
J'ai essayé le code de Avion-F16 et ça ne fonctionne pas. Seul le premier couple est entré dans la BDD.
avion-f16 18236 Messages postés dimanche 17 février 2008Date d'inscriptionContributeurStatut 15 septembre 2017 Dernière intervention - 6 févr. 2011 à 13:44
0
Utile
<?php
$names = $_POST['nom'];
$addresses = $_POST['adress'];

for($i = 0 ; $i < count($names) ; $i++) {
    $name = mysql_real_escape_string($names[$i]);
    $address = mysql_real_escape_string($addresses[$i]);

    $sql = 'INSERT INTO users(name,address) VALUES("'.$name.'","'.$address.'")';
}
0
Utile
Merci ça fonctionne nickel!