Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1904 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Executer deux requetes a la suite

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Executer deux requetes a la suite

n°578718
veryfree
Posté le 28-11-2003 à 22:57:29  profilanswer
 

Bonjour,
j'ai deux requetes sql d'insertion a executer mais y en a qu'une des deux qui s'execute je comprend pas pourquoi:
 
$requete_new_user = "INSERT INTO `user` (`id`, `login`, `password`, `email`, `group`) VALUES ('', '$login', '$password', '$email','$varChar'); ";
 
$request_applet="INSERT INTO `applet` (`id`, `group`, `site`, `host`, `port`, `channel`, `althost0`, `althost1`, `althost2`) VALUES ('', '$varChar', '$site', '$server', '$port', '$channel', '$althost0', '$althost1', '$althost2');";

   
mysql_query($requete_new_user);
mysql_query($request_applet);
 
 
la y'en a qu'une des deux qui est executée.
 
quand je fait:
 
 
$last_request="$requete_new_user $request_applet";
echo ("$last_request<br>" );
mysql_query($last_request);
 
 
 
elle ne s'execute pas du tout , par contre en faisant un copier collé de la requete dans phpmyadmin , elle pose pas de probleme.
 
vous voyez d'ou ca viens?


Message édité par veryfree le 29-11-2003 à 14:52:30
mood
Publicité
Posté le 28-11-2003 à 22:57:29  profilanswer
 

n°579645
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:22:28  profilanswer
 

ils te retournent quoi tes mysql_query?

n°579648
veryfree
Posté le 30-11-2003 à 20:23:21  profilanswer
 

Dans le premier cas:
 
$r=mysql_query($requete_new_user);
print("nb result:$r<br>" );
$r=mysql_query($request_applet);
print("nb result:$r<br>" );
 
nb result:
nb result:1
 
dans le second:
$r=mysql_query($last_request);
print("nb result:$r<br>" );
 
nb result:
 


Message édité par veryfree le 30-11-2003 à 20:28:32
n°579653
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:28:14  profilanswer
 


 
bon.. hum hum.. RTFM  :D  
 
tu pourras lire ça dedans déjà :
 

Citation :

Note  
La requête ne doit pas être terminée par un point-virgule.


 
puis ça :
 

Citation :

Un résultat différent de FALSE , la valeur signifie que la requête soumise est valide et qu'elle a pu être exécutée correctement.


 
et enfin, essaye plutot comme ça :
 
$requete_new_user = "INSERT INTO user (id, login, password, email, group) VALUES ('', '$login', '$password', '$email','$varChar') ";
 
$request_applet = "INSERT INTO applet (id, group, site, host, port, channel, althost0, althost1, althost2) VALUES ('', '$varChar', '$site', '$server', '$port', '$channel', '$althost0', '$althost1', '$althost2') ";

n°579655
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:30:16  profilanswer
 

veryfree a écrit :

Dans le premier cas:
 
$r=mysql_query($requete_new_user);
print("nb result:$r<br>" );
$r=mysql_query($request_applet);
print("nb result:$r<br>" );
 
nb result:
nb result:1


 
ben ça veut dire que la requete defaillante est dans $requete_new_user

n°579657
veryfree
Posté le 30-11-2003 à 20:30:46  profilanswer
 

j'ai fait le boulay la [:veryfree]
 
 
merci a toi :jap:
 
note qd meme  qu'avec le ";" la premiere instruction est bien inséré :)


Message édité par veryfree le 30-11-2003 à 20:31:16
n°579658
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:31:35  profilanswer
 

$request_applet = "INSERT INTO applet (id, group, site, host, port, channel, althost0, althost1, althost2) VALUES ('', '$varChar', '$site', '$server', '$port', '$channel', '$althost0', '$althost1', '$althost2') ";
 
je vois que tu mets une valeur vide pour id..  :??:  
comment se fait il?
 
ton id est indexé? c'est quoi, un int? autoincrement? unique?

n°579659
veryfree
Posté le 30-11-2003 à 20:31:53  profilanswer
 

auto increment :jap:


Message édité par veryfree le 30-11-2003 à 20:32:00
n°579660
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:32:02  profilanswer
 
n°579665
veryfree
Posté le 30-11-2003 à 20:38:26  profilanswer
 

dit ca te dit je recherche quelqu'un pour developpé la partie plugin du site web de jchatirc :whistle:
 
genre qq qui en a crée un rempli un formulaire ( comme ca doit etre le cas pour miranda j'imagine )
 
partant [:veryfree]

mood
Publicité
Posté le 30-11-2003 à 20:38:26  profilanswer
 

n°579666
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:46:02  profilanswer
 


 
ben ça me tenterais bien.. mais la j'ai déjà tellement de trucs à faire.. j'espere que je vais finit un jour :/
 
 
par contre j'me permet de te donner des ptits conseils..  
si tu as une table user, appelle tes champs comme ça :
user_id
user_name
user_nickname
user_bidule
 
comme ça, si tu fai sune jointure avec une autre table, style applet, tu l'organise comme ça :
applet_id
applet_name
applet_bidule
user_id
 
et la on vois clairement que les deux tables sont reliés par user_id  :)  
 
et aussi, je te conseille d'indexer les champs qui vont te servir pour la jointure (genre user_id de la table applet)... comme ça, mysql va mettre moins de temps à le trouver ce champ :)

n°579667
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:48:03  profilanswer
 

ps: si tu mets tes id en autoincrement, ne les specifies pas dans le INSERT.. fait comme si elle n'existent pas..
 
apres ta requete INSERT, utilise mysql_insert_id pour récuperer l'id générée( http://dev.nexen.net/docs/php/anno [...] ert-id.php )


Message édité par Mr yvele le 30-11-2003 à 20:48:26
n°579670
gizmo
Posté le 30-11-2003 à 20:49:15  profilanswer
 

euh... perso, j'aurais nomé les champs comme ça:
 
USER:
id
name
nickname
bidule
 
APPLET:
id
name
bidule
ref_user_id
 
Je trouve que c'est beaucoup plus clair au niveau de la lecture, tu choppes directement l'ensembles des champs références.

n°579671
veryfree
Posté le 30-11-2003 à 20:50:12  profilanswer
 

merci des conseils ;)
 
c'est vrai que c'est assez crade mais c'etait plus par feneantise qu'autre chose :/

n°579672
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:53:44  profilanswer
 

gizmo a écrit :

euh... perso, j'aurais nomé les champs comme ça:
 
USER:
id
name
nickname
bidule
 
APPLET:
id
name
bidule
ref_user_id
 
Je trouve que c'est beaucoup plus clair au niveau de la lecture, tu choppes directement l'ensembles des champs références.


 
mouaip [:meganne]
 
pas mal en fait..  :jap:  
 
donc je ferais ça :
 
USER:
user_id
user_name
user_nickname
user_bidule
 
APPLET:
applet_id
applet_name
applet_bidule
ref_user_id
 
 
 :)  

n°579675
Mr yvele
yvele n'est plus.
Posté le 30-11-2003 à 20:54:10  profilanswer
 

veryfree a écrit :

c'est vrai que c'est assez crade mais c'etait plus par feneantise qu'autre chose :/


 
ouaip mais bon, par la suite ça te simplifie vraiment la vie..  :jap:

n°579683
veryfree
Posté le 30-11-2003 à 20:58:55  profilanswer
 

ce truc la n'evolura plus [:ddr555]
 
a la base je validait les compte al a man et ca commencait a soulé :sweat:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Executer deux requetes a la suite

 

Sujets relatifs
[MySQL] Executer plusieurs requètes avec OleDB[UltraEdit] comment exécuter un code en C sous Ultra Edit ?
executer une application en phpcommandes executer
suite de tubes ou pipes[Python@Blender] Ligne de commande pour executer un script python ?
[PHP/MySQL] - cohabitation de deux requetes dans une meme table ?[Access] Requetes selections
[SQL - résolu] requete d'une suite de chiffre. 
Plus de sujets relatifs à : Executer deux requetes a la suite


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR