Insérer plusieurs ligne avec 1 INSERT INTO [Résolu/Fermé]

Signaler
Messages postés
204
Date d'inscription
samedi 4 janvier 2014
Statut
Membre
Dernière intervention
4 juin 2017
-
Messages postés
32449
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 mai 2021
-
Bonsoir,

je viens vers vous car, là, j'ai un souci que je ne trouve pas de solution depuis ce midi.

Alors voila j'aimerais faire une requête qui insert une ligne dans ma bdd MAIS autant de fois que ma variable (qui défini le nombre) le veux.

Voici ma requete à transformer :

$sql = $bdd->exec("INSERT INTO membres_objets VALUES('','".$_POST['ID']."','".$_POST['obj']."')");


et la variable qui contien le nombre de fois à entrer est :
$pri2


voila si quelqu'un à une solution je suis preneur.

Merci par avance.

1 réponse

Messages postés
32449
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 mai 2021
3 484
Bonjour,

voili voilou ...
// Récupétion "propre" des variables AVANT de les utiliser
$id = isset($_POST['ID']) ? $_POST['ID'] : NULL;
$obj = isset($_POST['obj']) ? $_POST['obj'] : NULL;

//Préparation de la requête
// On places les valeurs dans un array
$arr_values = array();
for($i=1;$i<=$pri2;$i++){
$arr_values[] ="('','$id','$obj')";
}
//on transforme l'array en String séparé par une virgule
$values = join(",",$arr_values);

//exécution de la requête
$sql = "INSERT INTO membres_objets VALUES $values";
$sql = $bdd->exec($sql);


Mais.. bon.. ça me semble étrange de vouloir faire ça........


Messages postés
204
Date d'inscription
samedi 4 janvier 2014
Statut
Membre
Dernière intervention
4 juin 2017

Merci beaucoup tous est fonctionnel.

En faite si tu veux c'est un don qu'un membre peux faire avec choix du nombre donc il faut le retirer à ce membre qui donne pour en donner autant au membre qui reçoit donc voila pourquoi j'avais besoin de faire ce genre de manip.

En tous cas, merci beaucoup.
Messages postés
32449
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 mai 2021
3 484 >
Messages postés
204
Date d'inscription
samedi 4 janvier 2014
Statut
Membre
Dernière intervention
4 juin 2017

Ca reste tout de même farfelu...
Pourquoi ne pas simplement, dans ta table, incrémenter ( ou décrémenter) une variable ???
De cette façon... chacun de tes users n'aura qu'une seule ligne dans la table.....