Bonjour,

Débutant, je rencontre un petit problème pour pouvoir lancer mon site web sur internet.
J'ai recherché sur plusieurs sites et forums pour savoir comment se connecter avec mon hébergeur sans le moindre succès.

Je suis hébergé chez 1&1 IONOS, seulement je ne dois pas mettre correctement les informations qui doivent correspondrent et j'ai ce message qui s'affiche >>>
Erreur : SQLSTATE[HY000] [2002] Connection refused

Ci-dessous mon code de connection actuel :
try
{
$bdd = new PDO('mysql:host=127.1.1.0; port=3306;db775914981;charset=utf8', '', '');
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}

Merci d'avance pour votre aide !

37 réponses


Guizmo
Auteur
Réponse acceptée

Merci une fois de plus pour votre aide ! Grâce à vous ça me permet d'avancer dans mon apprentissage !

Bonjour,
Insére ton code avec le bouton </ > di formulaire, ça le meetra en forme
C'est 127.0.0.1 ou localhost

Guizmo
Auteur

Avec 127.0.0.1 cela ne change rien, avec le bouton du formulaire comme ceci ?
< mysql:host=127.0.0.1; port=3306;db775914981;charset=utf8', '', '' />

et tu es sur que c'est ça le host que tu as dans tes infos de configurations ?

c'est bizarre car je gère un site sur 1&1 et le host est le suivant :

$host_name = 'db******.db.1and1.com';
Guizmo
Auteur

Merci lolo3129 pour le lien, concernant 1&1 ne faut il pas d'accord créer une nouvelle base de donnée sur le site justement ?

consulte directement sur ton espace si tu as une bdd

Guizmo
Auteur

D'accord, j'ai déjà une bdd qui est connecté à un site web wordpress, si je reprend les mêmes identifiants de la bdd cela n'a pas d'importance ?

Attention de ne pas altérer les données au risques de planter ton WP
Il est préférable de crée une base de données pour faire ton entrainement

Guizmo
Auteur

Bonjour,
J'ai crée une base de donnée sur 1&1 et rempli les informations sur mon fichier comme ceci :
**$bdd = new PDO('mysql:host=db5000514656.hosting-data.io; port=3306;dbname=dbs494142;charset=utf8', 'dbu854808', '***');**

Ma page n'affiche plus Erreur : SQLSTATE[HY000] [2002] Connection refused mais s'affiche toujours en blanc avec seulement : Erreur : SQLSTATE[HY000] [2002] No such file or directory

En faîte ne faut-il pas connecter à la fois la base de donnée 1&1 IONOS avec la base de donnée mysql pour récupérer toutes les informations ?
Merci d'avance

ta base mysql est ou? la base de donnée 1&1 doit etre ta base mysql sur la quel tu te connect.

Guizmo
Auteur

Ce que je veux dire c'est qu'à la base j'ai travaillé mon site en local avec Mysql et comme maintenant je veux le mettre en ligne je suis obligé de me servir des informations de la base de donnée crée sur 1&1

Suffit d'exporter ta DB local et de l'importer dans la DB 1&1 et de renseigner les bon identifiant de ta DB 1&1 en supprimant les identifiant de ta DB local.

Guizmo
Auteur

Okay merci je vais voir tout ça !

Guizmo
Auteur

Bonjour, j'ai exporté ma base de donnée Mysql et par la suite importé dans la bdd de 1&1, (Le fichier SQL pèse 4 ko) cela a très bien marché sans aucune erreur.
Seulement j'ai toujours le message : SQLSTATE[HY000] [2002] No such file or directory qui s'affiche et à mon avis c'est pas grand chose mais cela doit venir des informations que j'ai renseigné >>>
**$bdd = new PDO('mysql:host=db5000514656.hosting-data.io; port=3306;dbname=dbs494142;charset=utf8', 'dbu854808', '***');**

normalement pas besoin de spécifier le port dans la connexion
sur ton espace, tu as un exemle de code pour pdo et tu as juste ton mdp à ajouter

Guizmo
Auteur

Dans l'espace 1&1 j'ai toutes les informations concernant la base de donnée, tu parles peut-être d'un autre espace pour les infos PDO ?

non, tu as dans cet espace un exemple de code

Guizmo
Auteur

Ahhh oui je n'avais pas vu l'exemple !! Merci pour l'info !
J'ai remplacé les infos par :
<?php
$host_name = 'db5000514656.hosting-data.io';
$database = 'dbs494142';
$user_name = 'dbu854808';
$password = '*****';
$connect = mysql_connect($host_name, $user_name, $password, $database);

  if (mysql_errno()) {
    die('<p>La connexion au serveur MySQL a échoué: '.mysql_error().'</p>');
  } else {
    echo '<p>Connexion au serveur MySQL établie avec succès.</p >';
  }

?>

J'obtiens ceci
Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /homepages/33/d773507421/htdocs/projet_5/index.php:8 Stack trace: #0 {main} thrown in /homepages/33/d773507421/htdocs/projet_5/index.php on line 8

oui les fonctions mysql_* sont supprimés de php7
prends la version PDO

Guizmo
Auteur

Comme ceci ?
<?php
try
{
$bdd = new PDO($host_name = 'db5000514656.hosting-data.io';
$database = 'dbs494142';
$user_name = 'dbu854808';
$password = '*****';
$connect = mysql_connect($host_name, $user_name, $password, $database);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}

?>

non, regarde l'exemple donnée...

Guizmo
Auteur

Ah oui j'avais pas vu tout de suite qu'on pouvait selectionner les autres exemples, donc voilà j'ai pris pour modèle le PDO !

<?php
$host_name = 'db5000514656.hosting-data.io';
$database = 'dbs494142';
$user_name = 'dbu854808';
$password = ***';
$bdd = null;

try {
$bdd = new PDO("mysql:host=$host_name; dbname=$database;", $user_name, $password);
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

} catch (PDOException $e) {
echo "Erreur!: " . $e->getMessage() . "<br/>";
die();
}
?>

J'ai encore le même problème de Erreur : SQLSTATE[HY000] [2002] No such file or directory
pourtant ça devrait fonctionner correctement et mon mot de passe est bien correct

c'est bizarre,
il faudrait voir ce que donne le phpinfo();
On est d'accord que tu test ce code sur ton site 1&1 et non en local ?

Guizmo
Auteur

Oui bien sûr, je transmets mes pages php sur FileZilla et la bdd est celle de 1&1

mets un phpinfo(); avant ton code et vois si l'extension PDO est activé

Guizmo
Auteur

C'est dommage que sur ce forum on puisse pas envoyer des screens..
J'ai mon header.php en include qui s'affiche sans problème, par contre mes autres pages index.php, footer.php, etc...ne s'affichent pas mais y'a l'erreur Erreur : SQLSTATE[HY000] [2002] No such file or directory

Guizmo
Auteur

Avec le phpinfo();

J'ai une page avec PHP Version 7.2.30 plusieurs tableaux et du texte

il faut chercher dedans si tu trouves "PDO"

Guizmo
Auteur

Je l'ai trouvé

Dans le tableau tu as >>>
PDO support :
PDO drivers

enabled :
sqlite, mysql
pdo_mysql

ok, donc PDO est bien activé
la je sèche sur la chose
essaye de voir avec le support

Guizmo
Auteur

Rien ne fonctionne c'est pénible.

Guizmo
Auteur

J'ai trouvé pourquoi !
Enfaite sur toutes mes pages j'ai mis >>>
<?php
include("header.php");
?>

Et quand je supprime par exemple sur la page index.php le include("header.php"); la page s'affiche entièrement

Guizmo
Auteur

Le soucis vient de la page header.php

ta page header.php fait quoi?

Guizmo
Auteur

En gros plus précisément dans ma page header.php c'était les deux pages "inscription.php et connexion.php qui génèreraient les erreurs

<?php
include("inscription.php");
?>

    <?php
        include("connexion.php");
    ?>
Guizmo
Auteur

Merci une fois de plus pour votre aide !