PB connection MySQL

Résolu
aidam Messages postés 16 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 24 mai 2007 - 18 avril 2007 à 09:29
aidam Messages postés 16 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 24 mai 2007 - 20 avril 2007 à 10:21
Bonjour, Voila ma situation, j'ai installé Apache,PHP 5, MySQL et phpMyAdmin en séparer (pas easyphp).

Mon pb est que la commande de connection à mysql ne fonctionne pas, voici le code que j'éffectu :

echo "essai2";
mysql_connect($this->getHost(), $this->getUser(), $this->getPassword()) or die("Connexion au serveur impossible".$this->MysqlConnexionErr().mysql_error());
echo "essai3";

les echo m'on permis de savoir d'ou vennait l'erreur car seul essai2 s'affiche, je croyais que s'il y avait un pb dans mysql_connect alors le die s'éxecuterais mais mème pas. Pourquoi?

J'ai bien un user qui a comme paramètre ceux passé par la fonction.

quel peut etre le pb?


merci

5 réponses

aidam Messages postés 16 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 24 mai 2007
20 avril 2007 à 10:21
bonjour,


Bon j'ai trouver la solution sur le forum de apache http://forum.apachefrance.com/viewtopic.php?t=3425 et heu... j'avais oublier de décommenter une extension dans php.in qui autorisait l'acces à mysql : extension=php_mysql.dll

voila merci pour votre aide.
3
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
18 avril 2007 à 15:16
Bonjour,

est-ce que ton code fait partie d'une classe ?
Si c'est pas le cas, changes la ligne par

mysql_connect("localhost", "root", "") or die("Connexion au serveur
impossible". mysql_error() );

Cordialement

http://perso.wareteam.com
http://freelance.wareteam.com
0
aidam Messages postés 16 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 24 mai 2007
18 avril 2007 à 15:27
Mon code fait bien partie d'une classe.

J'ai essayer le code que tu as mis ainsi que sans mettre mysql_error(), j'ai essayer aussi de mettre une @ devant mysql_connect comme je l'ai vue sur differents site mais je ne vois pas son utilité

par contre tous ces essais ne fonctionnent pas.
0
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
18 avril 2007 à 16:09
est-ce que tu peux mettre le code de la classe en entier + la page php qui fait appelle à cette classe
http://perso.wareteam.com
http://freelance.wareteam.com
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
aidam Messages postés 16 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 24 mai 2007
18 avril 2007 à 17:23
ok donc voila le code de la classe j'ai juste enlever les get afin d'etre moins long

<?php


class connection3
{
  var $host; // nom du serveur
 var $user; // nom de l'utilisateur
 var $password; // mot de passe
 var $database; // nom de la base de donnée
 
 /********************************
 /   Constructeur
 *********************************/
    function BDD()
 {
     $this->host = "";
    $this->user = "";
    $this->password = "";
    $this->database = "";
 }
 
 /********************************
 /   Connection au serveur MySQL
 *********************************/ 
  function doConnect()
 {
  echo "essai2";
  mysql_connect($this->getHost(), $this->getUser(), $this->getPassword()) or die("Connexion au serveur impossible".$this->MysqlConnexionErr().mysql_error());
  echo "essai3";
 }
 
 /************************************
 /   Creation d'une base de donnée
 *************************************/
 function doCreateBDD()
 {
  $requete = "CREATE DATABASE ".$this->getDatabase();
  $resulat = mysql_query($requete) or die(mysql_error().$this->MysqlCreationBErr());
    $this->enregistrer(); 
 }
 
 /********************************************
 /enregistrement du nom de la base de données
 ********************************************/
 function enregistrer()
 {
   $chemin = "C:\Program Files\EasyPHP1-8\www\arnaud\conf.ini";
  $ereg = fopen($chemin,"w");
  fwrite($ereg,$this->getDatabase()); 
  fclose($ereg);
 }
 
 /********************************************
 /lecture du nom de la base de données
 ********************************************/
 function lecture()
 {
   $chemin = "C:\Apache\www\monsite\essai\arnaud\conf.ini";
  if (file_exists($chemin))
  {
      $lec = fopen($chemin,"r"); 
   while (!feof($lec))
   {
      $buffer =  fgets($lec, 4096);
      $this->setDatabase($buffer);
   }
   fclose($lec);
   return 1;
  }
 }
 
 /************************************
 /   Selection d'une base de donnée
 *************************************/
 function doSelect()
 {
   mysql_select_db($this->getDatabase()) or die("Sélection de la base de données impossible".$this->MysqlSelectionErr().mysql_error());
 }
 
 /**************************************
    /   Suppression de la base de données
    **************************************/
 function doDeletBDD()
 {
   $chemin = "C:\Program Files\EasyPHP1-8\www\arnaud\conf.ini";
  $requete = "DROP DATABASE ".$this->getDatabase();
  $resulat = mysql_query($requete) or die(mysql_error().$this->MysqlSuppressionErr());
  unlink($chemin);
 }
 
 /***********************************
  /   Erreur de connecxion au serveur
  ************************************/
  function MysqlConnexionErr()
 {
    echo '';
    echo 'Impossible de se connecter à  se serveur : '.$this->getHost().'
';
    echo '';
  }
 
 /********************************************
  /   Erreur de création d'une base de donnée
  *********************************************/
 function MysqlCreationBErr()
 {
   echo '';
    echo 'La base de donnée '.$this->getDatabase().' n a pas été créer
';
    echo '';
 }
 
 /********************************************
  /   Erreur de selection d'une base de donnée
  *********************************************/
  function MysqlSelectionErr()
 {
   echo '';
   echo 'La base de donnée '.$this->getDatabase().' est inexistante
';
   echo '';
  }
 
 /********************************************
  /   Erreur de suppression de la base de donnée
  *********************************************/
 function MysqlSuppressionErr()
 {
   echo '';
    echo 'La base de donnée '.$this->getDatabase().' na pas été supprimer
';
    echo '';
 }
 
 /********************************
  /   Property SET
  *********************************/
  function setHost($strHost ='')
 {
   if (empty($strHost))
    {
    $this->host = 'localhost';
    }
    else
    {
      $this->host = $strHost;
    }
  }
   
  function setUser($strUser='root')
 {
   $this->user = $strUser;
  }
   
  function setPassword($strPass='')
 {
   if (empty($strPass))
    {
    $this->password = '';
    }
    else
    {
      $this->password = $strPass;
    }
  }

  function setDatabase($strDbase)
 {
   $this->database = $strDbase;
  }

 /********************************
 /   Property GET
 *********************************/
?>
et voici le code qui l'appel

<?php


require("connection3.php");
require("modification3.php");


$bdd = new modification3(); // Creation d'une nouvelle base de donnée
$bdd->setHost("localhost"); // Assign Host Name
$bdd->setUser("root"); // Assign User Name
$bdd->setPassword(""); // Assign Password
$bdd->doConnect(); // Connexion au serveur

...
?>

mofication3() est un constructeur vide dans le fichier modification3.php qui appartien à une classe du meme nom.

merci pour ton aide.
0
Rejoignez-nous