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

  FORUM HardWare.fr
  Programmation
  C

  deconnexion inexpliquée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

deconnexion inexpliquée

n°1781269
majong
Posté le 02-09-2008 à 10:00:07  profilanswer
 

Bonjour, lorsque j'effectue ces deux requetes, le log me dit que la première est ok mais la 2° à échoué (requete echou 2).J'appelle la même requete pour vous montrer l'absurdité.
 

Code :
  1. static MYSQL *conn;//global
  2. int connexion_mysql(){
  3. char *opt_host_name="localhost";
  4. char *opt_user_name="*******";
  5. char *opt_password="********";
  6. char *opt_db_name="********";
  7. conn = mysql_init (NULL);
  8. mysql_real_connect (conn, opt_host_name, opt_user_name, opt_password,opt_db_name,0,NULL,0);
  9. return (mysql_query (conn,"select * from THistorique" ) == 0);
  10. }
  11. int requete1()
  12. {
  13.    MYSQL_RES *res;
  14.    MYSQL_ROW row;
  15.    if (!mysql_query(conn,"SELECT * FROM THistorique" ))
  16.    {
  17.       trace_message("Requete echoue 1" );
  18.       return 0;
  19.    }
  20.    res = mysql_use_result(conn);
  21.    if (res != NULL)
  22.    {
  23.       if (row = mysql_fetch_row(res))
  24.       {
  25.         trace_message("Requete ok" );
  26.       }
  27.       mysql_free_result(res);
  28.       return 1;
  29.    }
  30.    else
  31.   {
  32.      trace_message("Requete echoue 2" );
  33.      return 0;
  34.   }
  35. }
  36. int insererFlux()
  37. {
  38.   connexion_mysql();
  39.   requete1();
  40.   requete1();
  41. ...


Où est l'explication ?

mood
Publicité
Posté le 02-09-2008 à 10:00:07  profilanswer
 

n°1781299
majong
Posté le 02-09-2008 à 10:41:50  profilanswer
 

si je mets :

Code :
  1. int insererFlux()
  2. {
  3.   connexion_mysql();
  4.   requete1();
  5.   connexion_mysql();
  6.   requete1();
  7. ...


Ca marche


Message édité par majong le 02-09-2008 à 10:42:09
n°1781305
majong
Posté le 02-09-2008 à 11:01:12  profilanswer
 

Ben peut etre cela provient du fork
J'ai mis dans le main (donc meme connexion pour les fils)
 

Code :
  1. connexion_mysql();


 
 
puis  

Code :
  1. int insererFlux()
  2. {
  3.   requete1();
  4.   requete1();
  5. ...


La 2° requete n'est pas executée!


Message édité par majong le 02-09-2008 à 11:01:34
n°1781335
gilou
Modérateur
Modosaurus Rex
Posté le 02-09-2008 à 11:50:06  profilanswer
 

A tout hasard, si tu ne fait pas le mysql_free_result(res); qu'est ce que ca donne?
Parce que vu que c'est a la deuxieme évaluation de res, apres un passage par cette fonction, que ton probleme survient, ça pourrait être lié, des fois que ça aie un effet de bord sur un champ de conn.
A+,


Message édité par gilou le 02-09-2008 à 11:52:36

---------------
There's more than what can be linked! --  Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- Il ne faut plus dire Sarkozy, mais Sarkozon -- (╯°□°)╯︵ ┻━┻
n°1781366
majong
Posté le 02-09-2008 à 12:14:33  profilanswer
 

non.
Ce n'est pas lié à la la compilation j'espère je fais:
gcc -c main.c md5.c -I/usr/include/mysql
puis
gcc -o serveur main.o md5.o -L/usr/lib/mysql -lmysqlclient

n°1781390
majong
Posté le 02-09-2008 à 12:37:39  profilanswer
 

J'ai viré le pointeur static MYSQL *conn;
et jai mis MYSQL conn;  
Je retrouve le pointeur (&conn)
Là ca marche !


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

  deconnexion inexpliquée

 

Sujets relatifs
déconnexion automatique à la fermeture du navigateursession - déconnexion
Problème de session: deconnexion.[Résolu] Affichage de la déconnexion d'un utilisateur
[ Quasi-Résolu ] [socket] Effectuer deux echanges sans deconnexionCode php pour la deconnexion
XMLHttpRequest : problème de deconnexion ?deconnexion apres authentification http
déconnexion / reconnexion internet en C ?gros pb de deconnexion sur chat java
Plus de sujets relatifs à : deconnexion inexpliquée


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)