aidam
Messages postés16Date d'inscriptionsamedi 25 février 2006StatutMembreDernière intervention24 mai 2007
-
18 avril 2007 à 09:29
aidam
Messages postés16Date d'inscriptionsamedi 25 février 2006StatutMembreDernière intervention24 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.
aidam
Messages postés16Date d'inscriptionsamedi 25 février 2006StatutMembreDernière intervention24 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
aidam
Messages postés16Date d'inscriptionsamedi 25 février 2006StatutMembreDernière intervention24 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é
aidam
Messages postés16Date d'inscriptionsamedi 25 février 2006StatutMembreDernière intervention24 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
/********************************
/ 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
$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.