[MySQL] Warning: MySQL: Too many open links (1)

Warning: MySQL: Too many open links (1) [MySQL] - Programmation

Marsh Posté le 26-11-2001 à 22:45:40    

Salut !
 
J'ai ce message d'erreur qui apparais quand je lance une recherche avec mon moteur interne !
Kezaco ?

Reply

Marsh Posté le 26-11-2001 à 22:45:40   

Reply

Marsh Posté le 26-11-2001 à 23:44:50    

à mon avis t'as déjà une autre connection d'ouverte et ton serveur n'en accepte qu'une à la fois...
 
pour plus de détails sur le nombre max de connections, phpinfo() et les caractéristiques de l'hébergement merci  ;)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 27-11-2001 à 09:26:04    

Merci, je vois ca ce soir ! ;)
A+

Reply

Marsh Posté le 27-11-2001 à 15:17:50    

Il faut faire aussi bien gaffe de bien fermer la connection avec mysql_close(), sans attendre le timeout. "Too Many connection open" n'est pas normal lorsque uniquement une personne se sert du script.

Reply

Marsh Posté le 27-11-2001 à 15:59:26    

la connection ne se ferme pas d'elle meme a la fin d'execution d'une page?

Reply

Marsh Posté le 27-11-2001 à 16:45:12    

si c'est pour ça que ça vient forcément d'une double ouverture ou d'un pb de conf, et pa


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 27-11-2001 à 16:45:13    

si c'est pour ça que ça vient forcément d'une double ouverture ou d'un pb de conf, et pas d'un oubli de fermeture...

 

[edtdd]--Message édité par Sh@rdar--[/edtdd]


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 27-11-2001 à 16:58:46    

Je regarde ca ce soir ;)
Merci de votre aide.

Reply

Marsh Posté le 27-11-2001 à 17:01:52    

sauf si il y a une boucle mal placée, genre qui ouvre une connection à chaque requete ....

Reply

Marsh Posté le 27-11-2001 à 17:22:44    

faut eviter les requette imbriqué et preferer les jointures
 
"requette imbriqué: ou comment mettre un quadri-xeon a plat!"

 

[edtdd]--Message édité par speedyop--[/edtdd]

Reply

Marsh Posté le 27-11-2001 à 17:22:44   

Reply

Marsh Posté le 27-11-2001 à 20:49:38    

speedyop a écrit a écrit :

faut eviter les requette imbriqué et preferer les jointures
 
"requette imbriqué: ou comment mettre un quadri-xeon a plat!"  
 
 




 
Pourrais-tu donner un exemple de requette imbriquée et de jointure pour voir la différence.
Merci.

Reply

Marsh Posté le 27-11-2001 à 20:52:41    

Je viens de regarder et voici la ligne qui fais défaut :
 
$connecte = mysql_connect($cfgHote, $cfgUser, $cfgPass) or die ("Connexion impossible<br>" );
 
donc, il faut que je m'arrange à ce qu'il y est qu'une seule connection pour tous.

Reply

Marsh Posté le 27-11-2001 à 21:27:37    

ben faut pas faire ca, vaut mieux ouvrir la connection a la base en ahut de page (la plus part du temps dans un lib.inc inclut pour faire propre)
 
mysql_connect("host","user","pseudo" );
mysql_select_db("mabase" );
 
ensuite tu touche plus a ca
 
tu fait tes requettes normalement
 
$query = "select * from matable";
if ($result=mysql_query($query))
{
 if ($mysql_num_rows($result)>0)
  {
  $myreponse=mysql_fetch_array($result);
  }
 else
  {
  $myerror = "pas de d'enregistrement";
  }
}
else
{
 $myerror = "erreur de requette";
}
 
et fin de page la connection a la base est fermée toute seule, je trouve que c'est une bonne methode d'execution de requette, si klk'1 en preferre une autre...

 

[edtdd]--Message édité par speedyop--[/edtdd]

Reply

Marsh Posté le 27-11-2001 à 21:30:06    

C'est ce que je viens de faire, mais j'ai des autres erreurs maintenant...
 
Warning: Supplied argument is not a valid MySQL result resource in /home5/eq15000/html/recherche/search.php on line 136
 
Voici les lignes 134 a 139
 
$query="SELECT keywords.key_id FROM keywords WHERE keywords.keyword like '$mots[$x]'";
  $searchmot=mysql_db_query($base,$query);
  $keyword=mysql_fetch_row($searchmot);
  $mots[$x]=$keyword[0];//on remplace le mot clef par son id
  $motstotal=$nombremots;
  while ($keyword=mysql_fetch_row($searchmot))

Reply

Marsh Posté le 27-11-2001 à 21:34:35    

ca doit etre ta requette qui ne marche pas , pour debuguer je te conseille de faire un  
echo "<B>".$query."</B><BR>";
juste apres avoir poser ta requette
et de copier coller tout ca dans un query ananlyser (j'adore mysqlfront perso, mais phpmyadmin fera l'affaire a default)

Reply

Marsh Posté le 27-11-2001 à 21:51:46    

J'ai mis donc la ligne
 
echo "<B>".$query."</B><BR>";
 
et la requette est bonne mais je n'ai pas compris ce qu'il fallais faire avec phpmyadmin...

Reply

Marsh Posté le 27-11-2001 à 21:53:53    

bah tu colle tout ca dans "executer une ou des requette" a l'accueil de base

Reply

Marsh Posté le 27-11-2001 à 21:59:52    

ok, mais qu'est-ce qu'il faut que je colle dedans ? :)

Reply

Marsh Posté le 27-11-2001 à 22:02:40    

ben ta requette optenu par le debug

Reply

Marsh Posté le 27-11-2001 à 22:04:44    

oki, tous s'est bien passer :)
que faire ensuite ?

Reply

Marsh Posté le 27-11-2001 à 22:12:22    

Je viens de résoudre le prob !
 
J'ai remplacer les mysql_db_query par mysql_query
 
$searchmot=mysql_db_query($base,$query);
par
$searchmot=mysql_query($query);
 
Trops cool ! :)
Merci a tous !

Reply

Marsh Posté le 27-11-2001 à 22:13:18    

si ca c bien passer... hum... ca veut dire que c'est la ligne 135 qui est pas bonne...
 
t'utilise plusieur base pour utiliser mysql_db_query?
 
si t'en a qu'une tu peut faire
mysql_select_db("mabase" );
 
puis utiliser un simple mysql__query($query); pour voir

Reply

Marsh Posté le 27-11-2001 à 22:13:39    

a ba voila!!

Reply

Marsh Posté le 27-11-2001 à 22:16:55    

Vi, g été plus vite :D
Merci encore.

Reply

Marsh Posté le 27-11-2001 à 22:26:25    

Ptite question, il faut obligatoirement mysql_close() en fin de page ?

Reply

Marsh Posté le 27-11-2001 à 22:30:55    

non les connection sont fermé automatiquement en fin de page (a part dans le cas d'une connectin persistente (jamais rencontré le cas))

Reply

Marsh Posté le 27-11-2001 à 22:32:18    

merci bien :)

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed