Rechercher : dans
Par :

{MySQL} Fatal error- connexion impossible

Dernière réponse le 5 oct 2009 à 12:40:33 jeminteroj, le 5 oct 2009 à 10:30:17 
 Signaler ce message aux modérateurs

Bonjour,
J'ai tenté de développer un site web en php avec Dreamweaver4. J'ai installé Wampserver sur mon ordinateur, ai créé ma base de données avec PHPMyadmin, etc... et super, tout fonctionnait bien en local.
Je tente donc de mettre mon site en ligne, et là, plus rien ne fonctionne (du moins, aucune de mes pages PHP).
Voici le message d'erreur:
Warning: main(/Connections/blabla.php) [function.main]: failed to open stream: No such file or directory in /vhosts/o/r/blablades/www/test.php on line 1
Fatal error: main() [function.require]: Failed opening required '/Connections/blabla.php' (include_path='.:/usr/local/lib/php') in /vhosts/o/r/blablades/www/test.php on line 1...


Bon, j'ai compris que la liaison avec ma base de données en ligne ne fonctionnait pas. En fait, Dreamweaver crée un fichier auquel il fait appel en php en début de code... Voici l'exemple du code de ma page test:

<?php require_once('Connections/blabla.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$colname_test = "-1";
if (isset($_GET['id'])) {
  $colname_test = $_GET['id'];
}
mysql_select_db($database_blabladesign, $blabladesign);
$query_test = sprintf("SELECT * FROM clients WHERE id = %s", GetSQLValueString($colname_test, "int"));
$test = mysql_query($query_test, $ortiedesign) or die(mysql_error());
$row_test = mysql_fetch_assoc($test);
$totalRows_test = mysql_num_rows($test);
?>
(...... la page...................................................................)
<?php
mysql_free_result($test);
?>


J'ai déjà tenté, comme indiqué dans un autre forum, de changer le chemin de la première ligne ( et mettre "/Connections/blabla.php" ou "./Connections/blabla.php", de sortir le fichier blabla.php du dossier Connections...etc). Ca ne vient pas de là!

Voici maintenant le code du fichier blabla.php situé dans un dossier Connections que j'ai placé comme dans mon dossier www (comme il l'était en local):
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_blabla = "localhost";
$database_blabla = "nomdemabase";
$username_blabla = "nomd'usage qui est le même que le nom de ma base";
$password_blabla = "motdepasse";
$blabla = mysql_pconnect($hostname_blabla, $username_blabla, $password_blabla) or trigger_error(mysql_error(),E_USER_ERROR); 
?>


Je précise: j'ai utilisé le même nom de base de données et le même mot de passe en local que celui qui m'avait été donné par mon fournisseur d'accès (NETAVOUS) (qui par ailleurs utilise PHPmyadmin également... mais une version antérieure à celle installée sur mon poste, ce qui ne m'a pas posé de problème pour exporter ma base de données). Par contre, sur le site netavous, je trouve un hôte de connexion (sql.....) qui n'existe nulle part (que je n'ai rentré nulle part) en local...

Quelqu'un aurait-il une solution pour me connecter à ma base de données en ligne (sans que je sois obligée de refaire tout mon code)? Je sais, cette question paraît débile mais je débute... Voici trois jours que je tourne en rond sur Internet à la recherche de personnes qui auraient eu le même souci que moi... Apparemment, je ne suis pas la seule, mais je ne trouve aucune solution...
Merci d'avance de me sortir de ce mauvais pas!
Configuration: Windows XP Internet Explorer 6.0

Meilleures réponses pour « {MySQL} Fatal error connexion impossible » dans :
Eviter d'être bloqué en cas d'erreur TOO MANY CONNECTIONS VoirPar défaut, Mysql autorise 100 connexions (150 depuis la version 5.1) au serveur ... Cela signifie que le 101ème utilisateur recevra le message d'erreur "too many connections" ... Si cela vous arrive, quelqu'en soit la raison (site web trop...

1

bissdebrazza, le 5 oct 2009 à 11:33:26

Salut!
Le login et le mot de passe ne suffisent pas,il faut entrer le nom de ton serveur.En local c'est localhost,donc il faut trouver de celui de ton hébergeur! «Il faut avoir déjà beaucoup appris de choses pour savoir de­mander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU

Répondre à bissdebrazza

2

jeminteroj, le 5 oct 2009 à 12:37:08

Merci Bissdebrazza pour ta prompte réponse... Tu as raison!!!

A force de tournicoter, j'ai commencé à essayer des trucs au pif...
Notamment, remplacer localhost dans mon fichier Connections/blabla par l'hôte de connexion fourni par NETAVOUS (sql quelquechose...)
ET ça marche!!!!!!!!

Donc pour ceux qui auraient le même problème que moi, voici la solution:
quand vous êtes en local, avec Dreamweaver, votre fichier Connections/blabla auquel votre page php fait appel(blabla étant le nom que vous avez donné au fichier en créant la liaison avec la base de données dans Dreamwaver) doit comporter:

<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_blabla = "localhost";
$database_blabla = "nomdemabase";
$username_blabla = "nomd'usage qui est le même que le nom de ma base";
$password_blabla = "motdepasse";
$blabla = mysql_pconnect($hostname_blabla, $username_blabla, $password_blabla) or trigger_error(mysql_error(),E_USER_ERROR); 
?>


Quand vous passez votre site sur Internet, vous ne changez rien aux pages, mais vous modifiez simplement votre fichier Connections/blabla comme suit:
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_blabla = "sql....";------(adresse de l'hôte de connexion fourni par votre fournisseur d'accès!)-------
$database_blabla = "nomdemabase";
$username_blabla = "nomd'usage qui est le même que le nom de ma base";
$password_blabla = "motdepasse";
$blabla = mysql_pconnect($hostname_blabla, $username_blabla, $password_blabla) or trigger_error(mysql_error(),E_USER_ERROR); 
?>


C'est tout bête... Mais j'y ai passé trois jours...
J'espère que ça pourra servir à quelqu'un...
Encore une fois, merci Bissdebrazza, tu as mis le doigt où ça fait mal!!

Répondre à jeminteroj

3

 bissdebrazza, le 5 oct 2009 à 12:40:33

De rien,nous sommes là pour ça! «Il faut avoir déjà beaucoup appris de choses pour savoir de­mander ce qu'on ne sait pas.»
Jean-Jacques ROUSSEAU

Répondre à bissdebrazza