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

Installation MySQL Discussion :

problème avec Fatal error: Call to undefined function mysqli_connect()


Sujet :

Installation MySQL

  1. #1
    Membre confirmé
    Avatar de irnbru
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2004
    Messages : 316
    Points : 500
    Points
    500
    Billets dans le blog
    1
    Par défaut problème avec Fatal error: Call to undefined function mysqli_connect()
    Bonsoir, je suis sous apache 2 windows xp pro php 5 et mysql 5, j'ai le message d'erreur suivant avec mysql_connect suivant :
    Fatal error: Call to undefined function mysql_connect() in C:\www\ok.php on line 8

    j'ai dans php.ini

    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = "c:\www\php5\ext"


    ; Windows Extensions
    ; Note that ODBC support is built in, so no dll is needed for it.
    ; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5)
    ; extension folders as well as the separate PECL DLL download (PHP 5).
    ; Be sure to appropriately set the extension_dir directive.

    extension=php_mbstring.dll
    extension=php_bz2.dll
    ;extension=php_curl.dll
    ;extension=php_dba.dll
    ;extension=php_dbase.dll
    ;extension=php_exif.dll
    ;extension=php_fdf.dll
    ;extension=php_filepro.dll
    extension=php_gd2.dll
    ;extension=php_gettext.dll
    ;extension=php_ifx.dll
    ;extension=php_imap.dll
    ;extension=php_interbase.dll
    ;extension=php_ldap.dll
    ;extension=php_mcrypt.dll
    ;extension=php_mhash.dll
    ;extension=php_mime_magic.dll
    ;extension=php_ming.dll
    ;extension=php_mssql.dll
    ;extension=php_msql.dll
    extension=php_mysql.dll
    ;extension=php_oci8.dll
    ;extension=php_openssl.dll
    ;extension=php_oracle.dll
    ;extension=php_pgsql.dll
    ;extension=php_shmop.dll
    ;extension=php_snmp.dll
    ;extension=php_sockets.dll
    ;extension=php_sqlite.dll
    ;extension=php_sybase_ct.dll
    ;extension=php_tidy.dll
    ;extension=php_xmlrpc.dll
    ;extension=php_xsl.dll
    extension=php_mysqli.dll

    et dans c:\www\php5\ext j'ai les fichiers :

    php_mysql.dll
    php_mysqli.dll

    ai je oublié un truc??

    merci si vous avez une idée
    IRNBRU

  2. #2
    Membre confirmé
    Avatar de irnbru
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2004
    Messages : 316
    Points : 500
    Points
    500
    Billets dans le blog
    1
    Par défaut
    J'ai débloqué le problème, j'ai copié le fichier libmysql.dll dans C:\windows\System32 de Windows XP, j'ai redémarré le serveur apache, cela marche maintenant!

    Je souhaite savoir pourquoi j'ai besoin de ce fichier libmysql.dll et comment faire en sorte que cela soit proprement installé pour que php 5 et mysql 5 fonctionnent bien ensemble.

    Voici ce j'ai trouvé dans wrox:

    Configuring PHP5 to Use MySQL
    Pre-PHP5, MySQL support was included in PHP installation by default. With the release of PHP5, you
    now have to specifically enable this.
    If you are using Unix, you most likely built PHP with MySQL during installation. If you are using
    Windows, however, in order for your PHP and MySQL to play nice with each other, you will need to
    make two changes to your php.ini file. Open the file using your text editor (such as Notepad). Locate
    the following lines:
    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = “./”
    Change the last line to
    extension_dir = “c:\php\ext”
    The next change involves locating and “uncommenting” the following line:
    ;extension=php_mysql.dll
    Simply remove the semicolon at the beginning of the line to uncomment it.
    You will also need to copy the file libmysql.dll from your c:\php directory into your
    c:\windows\system32 or c:\winnt\system32 directory.


    Pouvez vous me confirmer?

    merci
    IRNBRU

  3. #3
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Il faut que ce fichier se trouvedans un répertoire situé dans la variable d'environnement PATH de windows.

    Le plus simple étant de le mettre dans le repértoire system32 ( qui est forcément dans le PATH )
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  4. #4
    Membre confirmé
    Avatar de irnbru
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2004
    Messages : 316
    Points : 500
    Points
    500
    Billets dans le blog
    1
    Par défaut
    Merci pour cette précision ! Cela fonctionne maintenant même sans le fichier libmysql.dll dans le répertoire windows
    J'aime garder tous les fichiers au même endroit ainsi c'est plus propre !

    Il y a un bon tutorial dans le site pour l'installation mais l'auteur devrait le mettre à jour pour php 5 et mysql 5 et surtout souligner l'importance du fichier libmysql qui sert à php de communiquer avec mysql proprement.

    Bref rappellez vous en installant php et mysql, il faut bien préciser le chemin d'installation de php dans la variable d'environnement path afin que php soit en mesure de charger le fichier libmysql sinon aucune communication n'est possible.

    Autre précision importante il faut prendre libmysql chez mysql et non celui inclus avec php car il n'est pas à jour pour mysql 5 (pour l'instant au moment de l'écriture de ce message le 17 septembre 2006). Il suffit de le télécharger et d'écraser celui déjà présent dans votre répertoire php.

    Ouf c'est pas évident, dommage que la doc est mal faite cela éviterait de perdre du temps à comprendre pour rien !

    IRNBRU

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

Discussions similaires

  1. Réponses: 17
    Dernier message: 10/10/2011, 11h26
  2. Réponses: 2
    Dernier message: 13/06/2010, 18h41
  3. Réponses: 3
    Dernier message: 13/05/2006, 15h48
  4. Réponses: 3
    Dernier message: 21/03/2006, 14h21
  5. Réponses: 11
    Dernier message: 08/12/2005, 16h54

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