IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Erreur : Can't connect to local MySQL server through socket [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Invité
    Invité(e)
    Par défaut Erreur : Can't connect to local MySQL server through socket
    Bonjour,
    j'ai une fonction qui me permet via une simple requête d'afficher un tableau avec la liste de ces clients.
    Cette fonction marche très bien.
    Sur cette même page j'ai un formulaire pour ajouter un client.
    Le pb est que lorsque que je valide le formulaire le tableau ne s'affiche plus.
    j'ai cette erreur a la place :

    Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /homez.50/xxx/www/yyy/article.fonction.php on line 114
    Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

    Je n'arrive pas a comprendre ce pb.
    Merci de votre aide

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    pouf pouf

    c'est un probleme de programmation. tu as du te planter dans ton php (et aussi de section mais c'est pas si grave).
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  3. #3
    Invité
    Invité(e)
    Par défaut
    Haaa, ok, comment déplacer le sujet dans la bonne section ?

    Sinon je ne voie pas ou je me suis planté niveau prog, car hormis a la validation du form l'affichage du tableau fonctionne parfaitement et je n'ai aucune notice ou erreur.

  4. #4
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Salut

    Est ce que par hasard tu n'aurais pas fermer la connexion à la Bdd (sans la réouvrir) avant d'exécuter cette requête ?
    Un truc genre mysql_close();
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  5. #5
    Invité
    Invité(e)
    Par défaut
    Nullement, d'ailleurs je ne ferme jamais mes connexions

  6. #6
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    As tu essayer quand même de ré-ouvrir la connexion (mysql_connect), quitte à mettre provisoirement les host/user/pass "en dur", un truc vite fait quoi.
    Et ça juste avant cette requête (ou en faisant une autre tout simple).

    Histoire d'être certain que c'est pas ça. (cette erreur y ressemble beaucoup).

    d'ailleurs je ne ferme jamais mes connexions
    D'après ce que j'ai lu, je ne crois pas que ce soit utile de fermer/ré-ouvrir sans cesse une connexion, MySQL gèrerait ça naturellement.
    Il n'y peut que les cas très particuliers, très spécifiques comme les connexions persistantes (genre mysql_pconnect) où là MySQL ne ferme jamais la connexion, il faut prévoir de le faire lorsque c'est nécessaire (voir obligatoire).
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  7. #7
    Invité
    Invité(e)
    Par défaut
    En effet c'est l'un des premiers test que j'ai fait mais toujours le même résultat.
    J'avoue ne plus avoir ou chercher.

  8. #8
    Membre éprouvé
    Homme Profil pro
    Touche à tout informatique autodidacte
    Inscrit en
    Janvier 2007
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Touche à tout informatique autodidacte

    Informations forums :
    Inscription : Janvier 2007
    Messages : 808
    Points : 912
    Points
    912
    Par défaut
    Bonjour,
    Qu'y a t il à cette ligne article.fonction.php on line 114

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bah le plus étrange est que la ligne 114 correspond a un commentaire.
    Mais voici ma fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    //--- INFORMATION D'UN ARTICLE
    function InformationsArticle($id)
    {
    	$sql = '	SELECT 	article.titre,
    						article.article,
    						article.url,
    						article.publication
    				FROM	article
    				WHERE	article.id_article = \'' . $id . '\' ' ;
     
    	$query_sql = mysql_query($sql) or die(mysql_error()) ;
    	$row_sql 	= mysql_fetch_assoc($query_sql) ;
     
    	return $row_sql ;
    }

  10. #10
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Je vais insister un peu, mais as tu vraiment tenter de ré-ouvrir la connexion là où il fallait?

    Selon ton code que tu as mis qui causerait problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    mysql_connect('host', 'user_name', 'user_pass');
     
    $query_sql = mysql_query($sql) or die(mysql_error()) ;
    $row_sql = mysql_fetch_assoc($query_sql) ;
    Juste faire cet essai et voir si tu obtiens encore cette erreur.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  11. #11
    Invité
    Invité(e)
    Par défaut
    HAAAA LA LA LA LA,
    J'ai trouvé, mais alors, cela n'avait rien a voir avec la choucroute. Enfin pas directement.

    Le truc c'était qu'a la création d'un article ou a la mise a jour, une fonction me génère un flux RSS.
    Et c'est dans cette fonction qu'il y avait "@mysql_close();"
    Donc rien a voir avec le fichier article.fonction.php, ni avec les fonctions dont les messages d'erreur faisait référence. C'était le fichier rssfed.fonction.php

    c'est vraiment tordu par moment.

    Merci a tous de m'avoir aidé

  12. #12
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Et c'est dans cette fonction qu'il y avait "@mysql_close();"
    Donc rien a voir avec le fichier article.fonction.php, ni avec les fonctions dont les messages d'erreur faisait référence. C'était le fichier rssfed.fonction.php
    A ben tiens, un mysql_close

    Comment ça "rien à voir" ?
    C'est plutôt l'inverse : C'est 100% normal qu'une requête "plante" car MySQL non connecté car la petite fonction d'à coté à eu la mauvaise idée de fermer cette connexion.

    Ne pas perdre de vu que la fonction mysql_query() attend 2 paramètres :
    resource mysql_query ( string $query [, resource $link_identifier ] )
    Le 2ème est certes optionnel, mais si la ressource n'existe plus car fermé, et bien la fonction "plante" tout simplement.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  13. #13
    Invité
    Invité(e)
    Par défaut
    En effet pour mysql_close(), ceci dit les messages d'erreur, ne m'aidait pas.
    d'ordinaire je n'utilise jamais mysql_close(), seulement j'ai récupéré un code d'un ancien projet et je ne l'avait pas vue .
    si je n'utilise pas le 2éme param de mysql_query() c'est par ceque j'utilise pconnect et cela m'évite de mettre un global $connect dans toutes mes fonctions.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/10/2013, 18h12
  2. Can't connect to local MySQL server through socket
    Par pontus21 dans le forum Installation
    Réponses: 3
    Dernier message: 18/04/2012, 12h46
  3. Réponses: 3
    Dernier message: 18/06/2007, 17h24
  4. Can't connect to local MySQL server through socket
    Par PamelaGeek dans le forum Réseau
    Réponses: 1
    Dernier message: 15/05/2006, 18h16
  5. PB : Can't connect to local MySQL server through socket
    Par nownow dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 30/05/2005, 10h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo