Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Connection MySQL
Envoyé par: knall

Bonjour,

J'ai un p'tit souci avec la connection MySQL depuis une page PHP.
J'ai ouvert le port 3306 sur mon firewall
PhpMyAdmin fonctionne normalement (bizarre il utilise bien une connexion php-mysql!!)

Il doit y avoir un probleme de parametrage mysql ... mais la je seche :-(

Si Quelqu'un pouvait m'aider.... merci d'avance

Knall


Voici mes erreur annoncé :

Warning: mysql_connect(): Lost connection to MySQL server during query in /www/test.php on line 7

Warning: mysql_select_db(): Access denied for user: 'user2@localhost' (Using password: NO) in /www/test.php on line 10

Warning: mysql_select_db(): A link to the server could not be established in /www/test.php on line 10
pas de connection

Voici le code de ma page :

<?php
// on se connecte à MySQL
$db = mysql_connect("adresse IP FAI", "user1", "pass");

// on sélectionne la base
mysql_select_db("glesker,$db") or die('pas de connection');

// on crée la requête SQL
$sql = 'SELECT nom,prenom,statut,date FROM famille_tbl';

// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo '<b>'.$data['nom'].' '.$data['prenom'].'</b> ('.$data['statut'].')';
echo ' <i>date de naissance : '.$data['date'].'</i><br>';
}

// on ferme la connexion à mysql
mysql_close();
?>

Poste le Wednesday 9 November 2005 18:27:54
Répondre     Citer    
Re: Connection MySQL
Envoyé par: chromosome

Je vois pas trop ou se trouve la db, ou se trouve le serveur web, pourquoi as-tu ouvert sur ton firewall le port de mysql.

Si tu te connectes a ton fai, je suppose qu'il herberge aussi le site ? Donc la connection se fait entre le serveur web et la base mysql donc tout chez le fai. Et donc rien a voir avec ton firewall.

Maintenant est-ce que ton pypmyadmin tourne sur la meme machine que ton serveur web ?

Poste le Wednesday 9 November 2005 18:59:36
Répondre     Citer    
Re: Connection MySQL
Envoyé par: knall

yep .... Merci de repondre si rapidement ;-)

En fait la machine est chez moi. j'ai donc entierement la main dessu.
C'est une dedian sarge. j'ai installé php apache mysql et phpmyadmin sur la meme machine avec apt-get.
Donc de l'extérieur, phpmyadmin fonctionne tres bien avec le trio php apache et mysql.
Par contre quand je veut faire une requete sur mysql via apache php... c'est le flop et j'ai l'erreur si dessu

Je ne comprend pas pourquoi phpmyadmin peut faire des requetes et mon code refuse la connexion a la base ...
Effectivement le firewall ne rentre pas en jeu car ouvert ou fermé phpmyadmin gere les requetes a la base de données.

knall

Poste le Wednesday 9 November 2005 19:29:21
Répondre     Citer    
Re: Connection MySQL
Envoyé par: chromosome

Ta table famille_tbl contient combien de record ?
Peux-tu faire le test en mettant un "limit 10" a la fin du select ?

Regarde ca
[www.vbulletin.com]

Poste le Wednesday 9 November 2005 20:39:03
Répondre     Citer    
Re: Connection MySQL
Envoyé par: knall

Euh, enfait il n'y meme pas de connection

Warning: mysql_connect(): Lost connection to MySQL server during query in /www/test.php on line 7

Warning: mysql_select_db(): Access denied for user: 'user2@localhost' (Using password: NO) in /www/test.php on line 10

Warning: mysql_select_db(): A link to the server could not be established in /www/test.php on line 10
pas de connection

<?php
// on se connecte à MySQL
$db = mysql_connect("adresse IP FAI", "user1", "pass");

// on sélectionne la base
mysql_select_db("glesker,$db") or die('pas de connection');
...


C'est a ce niveau que je donne ma langue au chat....
Une chose ma intrigué mon utilisateur est user1 et il me parle de user2@localhost dans l'erreur. user2 est mon utilisateur apache. je ne vois pas tres bien.

merci encore ;-)

Poste le Wednesday 9 November 2005 21:55:28
Répondre     Citer    
Re: Connection MySQL
Envoyé par: chromosome

Si cette machine est a toi, pourquoi mets tu mon FAI dans le champ host ?
Pour user1 et user2 j'avais vu la differences mais comme tu changes les informations de logon c'etait peut-etre une erreur.

Si comme tu le dit tu as la machine chez toi, pourquoi ne tentes tu pas un "mysql -u user1 glesker -p"
en ligne de commande pour voir si tu peux te connecter.

Mais si effectivement la machine est chez toi pourquoi ne mets-tu pas 127.0.0.1 (ou localhost) dans le champ host ?

Poste le Wednesday 9 November 2005 22:29:37
Répondre     Citer    
Re: Connection MySQL
Envoyé par: lolotux

Salut,

Comme dis Chromosome, pourquoi pas localhost...
Et surtout ferme ton port MySQL 3306
<?php
// on se connecte à MySQL
$db = mysql_connect("localhost", "user", "pass");

// on sélectionne la base
mysql_select_db("connecte") or die('pas de connection');

// on crée la requête SQL
$sql = 'SELECT IP,HeureLimite FROM nbconnecte';

// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo '<b>'.$data['IP'].')';
echo ' <i>date de naissance : '.$data['HeureLimite'].'</i><br>';
}

// on ferme la connexion à mysql
mysql_close();
?>

Passe trés bien chez moi ?
Est-tu sur que ton user a un pass sur MySQL ?

Poste le Thursday 10 November 2005 01:07:10
Répondre     Citer    
Re: Connection MySQL
Envoyé par: knall

Eureka !!!!! :-)

La principale erreur était le serveur.... mais oui bien sur... c'est localhost....
Quand au code oui je mis mysql_select_db("glesker,$db") au lieu de mysql_select_db("glesker")

Merci à vous tous;-)



knall

Poste le Thursday 10 November 2005 14:44:05
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Connection MySQL
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons