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

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Pb de session : "has already more than max_user_connection"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Pb de session : "has already more than max_user_connection"

n°450492
HsBridou
Posté le 07-07-2003 à 18:12:34  profilanswer
 

Salut à tous,
 
Voilà j'ai un problème que je n'arrive absolument pas à regler car je ne sais pas d'ou est-ce qu'il provient.
J'ai fait une partie administraiton pour mon site pour pouvoir géré le site sans avoir acces au ftp, enfin bref...
 
En local je n'es aucun problème, tout marche parfaitement mais quand je teste ma partie administration  sur internet, elle va marché pendant quelques "actions" je vais pouvoir ajouter des articles, faire quelques modifs et après ce message arrive :
 
Warning: User ?????@unix1.xelacom.net has already more than 'max_user_connections' active connections in /......./httpdocs/administration/verifsession.php on line 13
Impossible de se connecter à la base de données
 
J'ia caché certaines informations par les ?? et ... vous savez pourquoi ;)
 
Mon lancement de Session se fait en gros de cette facon :
Une page acces.php :
On entre son nom et mdp, puis on valide, dans la BD MySql on verifie que les infos sont bonnes.
 
Voilà le code pour la session :
 

Citation :


Function start_session($localhost, $login, $mot, $dbName, $dblink, $pseudo, $motdepasse)
{
 Global $session, $user_niv;
 $pseudo = trim($pseudo);
 $pass = trim($motdepasse);
 $tableverif = "utilisateurs";
 $verif = "SELECT niveau FROM $tableverif WHERE pseudo='$pseudo' AND pass='$motdepasse'";
 $resultverif = @mysql_db_query($dbName, $verif);
 $numrow = mysql_num_rows($resultverif);
 if ($numrow == 1)
 {
  $Pool = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz123456789";
  $lastChar = strlen($Pool) - 1;
  srand(time());
  for($i = 0; $i < 20; $i++)
  {
   $session .= $Pool[rand(0, $lastChar)];
  }
  $date = time() + 3600;
  $startses = "UPDATE $tableverif SET session = '$session', date = '$date' WHERE pseudo like '$pseudo'";
  if ($res = mysql_query($startses))
  {
   $r_user = mysql_query("select niveau from $tableverif where pseudo like '$pseudo'" );
   $r = mysql_fetch_array($r_user);
   $user_niv = $r["niveau"];
  }
  else
  {
   echo "Un incident grave c'est produit<BR>La commande n'a pas abouti";
   exit();
  }
 }
 else
 {
   echo "Login ou mot de passe incorrect<BR>La commande n'a pas abouti";
   exit();
 }
}


 
Donc si c'est bon la session est bien créer j'accede a une page console.php ou j'ai fait un menu pour els différentes rubriques de mon site, passons....
 
A chaque page de mon adminsitration je fais le test de validité de la session en appellant la page verifsession.php :
 

Citation :


<?php
if (!isset($session))
{        
echo "<br><br>Accès refusé ";
        exit();
}
else
{
$localhost = "blabla";
$login = "blabla";
$mot = "blabla";
$dbName = "blabla";
$dblink = mysql_pconnect($localhost,$login,$mot) or die("Impossible de se connecter à la base de données" );  @mysql_select_db("$dbName" ) or die("Impossible de se connecter à la base de données" );
$tableverif = "utilisateurs";
$resultverif = @mysql_query("SELECT pseudo, niveau, date, email FROM $tableverif WHERE session='$session'" );
if ($numrow = mysql_num_rows($resultverif) == 0)
{
echo "<br><br>Accès refusé ";
exit();
}        
$res = mysql_fetch_array($resultverif);        
$current_date = time();        
$date_limit = $res["date"] + 3600;
if (($current_date > $date_limit) or !(in_array($res["niveau"],$niveau)))
{
echo "<br><br>Accès refusé ";
exit();
}
}
$pseudo = $res["pseudo"];
$email = $res["email"];
?>


 
 
Par pitié dites moi que vous avez la soluce (pb dans mes ficiers, pb dut a l'hebergeur, utiliser une autre methode pour les sessions ?)
 
Merci d'avance les gars !

mood
Publicité
Posté le 07-07-2003 à 18:12:34  profilanswer
 

n°450507
forummp3
@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
Posté le 07-07-2003 à 18:26:23  profilanswer
 

c'est que tu as trop de connection simultanées.
utilise plutot  mysql_connect au lieu de  mysql_pconnect et ensuite deconnecte toi de la base avec mysql_close() aprés ta derniere requete.
 


---------------
lecteur mp3 yvele's smilies jeux de fille
n°450516
HsBridou
Posté le 07-07-2003 à 18:33:13  profilanswer
 

Je vais tester avec cette commande alors, mais c'est bizarre car dans l'administration je suis le suel conencté et le site n'étant pas encore ouvert il n'y a perosnne qui le visite et ausis bien je vais pouvoir faire kelkes actions pendant 5 minutes et d'un coup le message et la je peux plus acceder a la BD pendant facil 10-15minutes :(
 

n°561917
Mr yvele
yvele n'est plus.
Posté le 07-11-2003 à 17:51:55  profilanswer
 

forummp3 a écrit :

c'est que tu as trop de connection simultanées.
utilise plutot  mysql_connect au lieu de  mysql_pconnect et ensuite deconnecte toi de la base avec mysql_close() aprés ta derniere requete.


 
 
je vois pas le rapport avec l'utilisation d'une connexion persistante ou pas..  :heink:  
 
au contraire si tu te connectes et deconnectes toutes les 2 minutes, vaut mieux utiliser une connexion persistante..
enfin.. surtout si le gars n'utilise qu'une seule conneksion differente [:sinclaire]

n°561919
Mr yvele
yvele n'est plus.
Posté le 07-11-2003 à 17:56:52  profilanswer
 

Au fait, tu utilises pas session_start, session_register et tout et tout? :??:

n°561927
Mr yvele
yvele n'est plus.
Posté le 07-11-2003 à 18:03:05  profilanswer
 

jsuis fatigué ce soir
[:neowen]


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

  [PHP] Pb de session : "has already more than max_user_connection"

 

Sujets relatifs
[PHP] Quel a été le dernire bouton cliqué ?[PHP/JS] 2 submit avec des "onClick=" sur 1 même formulaire
[Résolu] Sessions PHP et Validation[PHP] Cookie - ou je peut le mettre ??
[PHP] mise à jour automatique de la page[PHP] Récupérer la valeur d'un url
[PHP] méthodologie pour passer des variables d'une page a l'autreProbleme avec les sessions PHP 4
[PHP] Remplacer des caractères[PHP] pb de explode
Plus de sujets relatifs à : [PHP] Pb de session : "has already more than max_user_connection"


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