begin process at 2012 05 31 14:40:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

répétition d'une requête insert INTO avec php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

répétition d'une requête insert INTO avec php

mercredi 28 avril 2010 à 21:39:19 | répétition d'une requête insert INTO avec php

mayourch

Salut,
Dans mon code php je besoin de répéter une requête SQL Insert INTO plusieurs fois mais l'insertion se fait une seul fois.
Voilà mon code:

include("connexion.php");
$id=login();
$req_nblicence="select*from nblicence";


if($resnb=mysql_query($req_nblicence))
{
while($numnbl=mysql_fetch_array($resnb))
{
for($i=0;$i<5;$i++)
{
$tab[$i]=rand(1,9);
}
$c= implode( $tab);




for($j=0;$j<$nblicence;$j++){

mysql_query("INSERT INTO code VALUES($NumVersion,$c)",$id);
}
}
}
mercredi 28 avril 2010 à 21:54:49 | Re : répétition d'une requête insert INTO avec php

kohntark

Membre Club
Salut,

Et en étant plus explicite ça donne quoi ?

De rien,

Kohntark -

mercredi 28 avril 2010 à 22:14:22 | Re : répétition d'une requête insert INTO avec php

mayourch

salut,
Lorsque j'ai fait ce code l' insertion ce faire une seul fois mais je besoin par exemple de répéter l'insertion 10 fois
dans mon table"code" affiche cette ligne
NumVersion clepriv
87654 4556
mois je besoin de répéter cette ligne 10 fois.
je m'excuse pour le français je suis faible en français
merci pour l'aide.

mercredi 28 avril 2010 à 23:19:36 | Re : répétition d'une requête insert INTO avec php

kohntark

Membre Club

je m'excuse pour le français je suis faible en français


Pas de problème là dessus dès l'instant où ça ne rentre pas dans la catégorie "je m'en fous d'écrire n'importe comment", et ton propos le prouve.

Bref, je ne suis pas sur de bien te suivre, mais :
Où est définie $NumVersion ? Cette variable n'apparait pas dans ton code.
A quoi correspond ta fonction login() ?

Commence dans un premier temps par remplacer ton code par :
Code PHP :
ini_set('display_errors', 1);
error_reporting(-1);

include("connexion.php");
$id = login();
$req_nblicence = "SELECT * FROM nblicence";

$tab = array();

if (false !== $resnb = mysql_query($req_nblicence)) {
    while($numnbl = mysql_fetch_array($resnb)) {
        for ($i=0; $i<5; $i++) {
            $tab[$i] = rand(1,9);
        }
        $c = implode( $tab);
        
        for($j=0; $j<$nblicence; $j++) {
            $req = "INSERT INTO code VALUES($NumVersion,$c)";
            if (false === mysql_query($req, $id)) die('erreur de la requête "'.$req.'" : <br />'.mysql_error());
        }
    }
}  else die('erreur de la requête $req_nblicence "'.$req_nblicence.'" : <br />'.mysql_error());


Et dis nous ce que cela t'affiche.

Cordialement,


Kohntark -

jeudi 29 avril 2010 à 00:02:31 | Re : répétition d'une requête insert INTO avec php

mayourch

pour la fonction login() c'est une fonction de la connexion à la base de donnée et j'oublie de mettre le variable NumVersion dans code précedent.
Merci pour votre répnse mais le problème n'est pas résolue,je remplace mon code par votre code mais rien que se passe le même problème, il affiche un seul ligne dans le table code et affiche un message d'erreur:
erreur de la requête "INSERT INTO code VALUES(4556,87757)" :
Duplicata du champ '87757' pour la clef 'PRIMARY'
voila mon code complet avec le variable NumVersion:
include("connexion.php");
$id=login();
$req_nblicence="select*from nblicence";


if($resnb=mysql_query($req_nblicence))
{
while($numnbl=mysql_fetch_array($resnb))
{
for($i=0;$i<5;$i++){
$tab[$i]=rand(1,9);}
$c= implode( $tab);


$NumVersion=$numnbl["NumVersion"];
$nblicence=$numnbl["nb_licence"];



for($j=0;$j<$nblicence;$j++){

mysql_query("INSERT INTO code VALUES($NumVersion,$c)",$id);}}}
jeudi 29 avril 2010 à 00:39:17 | Re : répétition d'une requête insert INTO avec php

kohntark

Membre Club

je remplace mon code par votre code mais rien que se passe


Au contraire, il affiche un message d'erreur, ce qui est très important pour déboguer.

Le début de la réponse est là :

erreur de la requête "INSERT INTO code VALUES(4556,87757)" :
Duplicata du champ '87757' pour la clef 'PRIMARY'


La valeur '87757' est déjà présent dans ta base alors que ce champ est une clé primaire, elle n'accepte donc pas de doublons.

Ne sachant pas quel est le but exact de ton script il n'est pas possible de t'aider plus.



Kohntark -

jeudi 29 avril 2010 à 04:01:59 | Re : répétition d'une requête insert INTO avec php

mayourch

salut,
j'ai essayé de changer mon code pour que le clé n'est pas répéter mais je n'arriva à faire ça exactement.toujours la même erreur.
Je explique un peu le but de mon script:
Le but de mon script est d'inserrer dans la table code des clés privée (le clé doit être chosit au hasard je faire ça avec la fonction rand()).Le nombre de clé privée dépend de la nombre de licence pour chaque numéro de version(par exemple lorsque dans la table nblicence il y a 10 nbre de licence pour le NumVersion il faut que dans la table code j'inserre 10 clés privées pour cette numéro version).le clepriv est un clé primaire dans la table code et NumVersion est la clé primaire dans la table nblicence.La table nblicence est déja remplir j'ai pas besoiun de le remplir.
Voilà le 2 tables:
table nblicence:
NumVersion varchar(10);
nb_licence char(3),
PRIMARY KEY (NumVersion);

table code:
NumVersion varchar(10);
Clepriv varchar(5);
PRIMARY KEY (ClePriv);

vendredi 30 avril 2010 à 02:17:08 | Re : répétition d'une requête insert INTO avec php

mayourch

enfin je trouve la solution.


Cette discussion est classée dans : insert, php, requête, into, nblicence


Répondre à ce message

Sujets en rapport avec ce message

php/mysql : apres un INSERT INTO, savoir une valeur dans la table. [ par samueldr ] Bonjour. Je ne suis pas habitué de poster ici. en fait, je crois que c'est ma premiere fois. J'ai un petit probleme en php/mysql. j'aimerais savoir, insert into php avec easyphp [ par Tarble ] Bonjour, donc avant j'étais sous wamp et je suis passer a easy php mais le blem c'est qu'avec lui les insert into en sql bug grave. Voila un exemple q php et INSERT INTO [ par ziham ] salut a tous j'ai un probleme avec mon forum. le probleme est que lorsque j'envoi un donné dans la base de donné , celle-ci inserer encore lors d'une PHP : INSERT Table [ par bm1982 ] Bonsoir à tous , J'ai lu une superbe methode permettant de recuperer tous les éléments envoyés par un formulaire par POST... foreach($_POST as $key = Utiliser le résultat d'une requête web service dans un autre (PHP/JSCRIPT) [ par nurty ] Hello la communauté, Je me demande quel sont les "best practice" pour mettre en place ma problématique. Je dois offrir à un client via une interface [DEBAT] Requête Ajax > Template & view en Javascript ou en PHP [ par destiny ] Bonjour, J'aimerai lancer un débat sur un principe fondamentale du futur logiciel que je vais faire pour ma boite. Ce logiciel aurai pour fonctionnem Probleme SQL PHP - effectuer une requête avec inférieur ou égale et une date ... [ par FXPHANTOM ] Bonjour , Je vous remets entre les mains un petit problème facheux ... Ma requête fonctionne très bien lorsque $date = date (DD-MM-YYYY)et quand $da Requête SQL & PHP [ par massbbc ] Bonjour a tous je fais une petite application en php pour un tirage au sort. Je veux pouvoir tirer des numéros au sort de façon unique. C'est à dire php5 insert into [ par manu7930 ] bonjour, j'ai une fonction insert into qui me semble correcte mais elle n'insert rien dans ma base: mysql_select_db("149224", $mysql_link); $sql= toutes les X temps [ par kopierreko ] Bonjour tout le monde !Je m'y connait très bien en php mais là j'avoue qu'il me manque une étape ^^Voilà je voudrait exécuter une requête sql en php t


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales