Administration BDD, Connexion MySQL
Hors ligneKillman__37 Le 04/04/2006 à 09:55 Profil de Killman__37 Configuration de Killman__37

Boujour à tous,

      j'ai un gros souci et j'en ignore la cause, je suis incapable d'executer cette page plus de 10 fois sans qu'elle fonctionne à chaque fois. Ces 10 fois correspondent au 10 de la propriété MAX_CONNECTIONS de la table user sur l'utilisateur que j'utilise pour cette connexion à la base.
      Le souci c'est qu'il me semble que cette propriété correspond à au nombre maximum de connexion simultanée. Hors dans ma page la connexion est fermée après chaque execution. Donc je ne comprend pas pourquoi je ne peu executer cette page à volonté.
      J'ai testé le mysqli_close() et il me renvoie true donc je suppose qu'il fonctionne. Alors si quelqu'un a une solution ou une proposition à me faire, je suis à l'écoute de tout ce que vous pourrez me conseiller., Merci beaucoup...

Page en question :


<html><head><title>Moniteur MYSQL</title> <style>table{font-family:verdana;font-size:8pt}</style> </head><body> <center><table border=0 cellspacing=0 cellpadding=0><tr><td valign=top> <table width=90% border=1 cellspacing=0 cellpadding=0> <?PHP
$conn
= mysqli_connect('localhost', 'dst', 'dst');
$result = mysqli_query($conn,'SHOW STATUS');
mysqli_close($conn);
$nb = 0;
while (
$row = mysqli_fetch_assoc($result)) {
  $nb = $nb+1;
  if (($nb == "42") || ($nb == "83") || ($nb == "123"))
  {
  print "</table></td><td valign=top><table width=90% border=1 cellspacing=0 cellpadding=0>";
  echo '<tr><td>&nbsp;' . $row['Variable_name'] . '</td><td><b>&nbsp;' . $row['Value'] . "</td></tr>";
  }
  else
  
{
   echo '<tr><td>&nbsp;' . $row['Variable_name'] . '</td><td><b>&nbsp;' . $row['Value'] . "</td></tr>";
  }
}
?> </table></td></tr></table></body></html>
Hors ligneWebdeb73 Le 04/04/2006 à 12:30 Profil de Webdeb73 Configuration de Webdeb73

Déplace ton mysqli_close() après ta boucle while()

++
--
Webmaster de http://www.webmaster-debutant.net
Hors ligneAnthony Le 04/04/2006 à 16:55 Profil de Anthony Configuration de Anthony

Admin
Salut,

non au contraire, ça augmentera les risques d'ereurs de max_user_connections. Le while n'a pas besoin de la connexion pour se faire, autant la fermer donc le plus rapidement possible.

a +
--

Hors ligneKillman__37 Le 04/04/2006 à 18:17 Profil de Killman__37 Configuration de Killman__37

Merci à tous, j'ai résolu mon problème après deux jours de recherche, je suis pas mécontent de passer à autre chose. La place du mysqli_close() n'avait aucune importance. La cause était dans les droits de l'administrateur. Car j'ai pu intercepter l'erreur qui me bloquait et je l'ai affiché. Ce message disant que l'utilisateur ne pouvais exeder un certain nombre de connexion par heure. J'ai donc entrepris de revoir les droits de l'utilisation avec un GRANT .... MAX_CONNECTION_PER_HOURS 0; et tout est bon. Il me reste plus qu'a savoir comment faire une connexion persistante, sachant que mysqli_pconnect() n'existe pas, dur dur, si quelqu'un pourrait m'aider à ce sujet, sauf si je sors du topic, merci quand même à tous.
Hors ligneAnthony Le 04/04/2006 à 18:33 Profil de Anthony Configuration de Anthony

Admin
Pourquoi vouloir une connexion persistante ? les perfs sont meilleures avec des connexions simples.

a +
--

Hors ligneKillman__37 Le 05/04/2006 à 09:17 Profil de Killman__37 Configuration de Killman__37

L'application nécessite un accès sécurisé par login et mot de passe. Je souhaite limité le nombre de connexion de chaque utilisateur. Comme pour le dst par exemple, le login dst devra être utiliser qu'une seule fois en même temps. La table USER permet de limiter le nombre de connexion par utilisateur. Mon idée était donc de créer une connexion persistante vers une base quelquonque avec le login et la mot de passe d'identification de l'utilisateur. Et donc de fermer cette connexion apres déconnection. Sinon une connexion classique s'ouvre et se ferme toute seule à la fin du script. Sinon c'est pas grave je travaillerai avec les variables sessions. Je vien d'y penser à l'instant enfin voila. Sinon il aurait été interessant de savoir comment créer une connexion persistante. Voila... Si vous avez des idées pour sécurisé une application intranet par mot de passe, je vous écoute... Merci...

PS: Actuelement, j'utilise le mot de passe et le login pour une connexion à une base, si la connexion echoue, un message indique à l'utilisateur que son identifaction est incorrect, dans le cas contraire une passe une variable session à true, et je teste le reste de mes pages avec la session, pour qu'elles soient accessible.
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels