Se connecter sql
Résolu
justine
-
Zero -
Zero -
Bonjour,
j'ai mis
et il m'affiche
Echec de la connexion à la base de données';
coment pon peut faire pour se connecter à la base sql
j'ai mis
<?php try { $pdo = new PDO('mysql:host=legtux.org;dbname=sitenom', 'mdp', 'sitenom'); } catch(Exception $e) { echo 'Echec de la connexion à la base de données'; exit(); }?>
et il m'affiche
Echec de la connexion à la base de données';
coment pon peut faire pour se connecter à la base sql
Configuration: Windows / Chrome 73.0.3683.86
A voir également:
- Se connecter sql
- Se connecter à gmail sur téléphone - Guide
- Se connecter à ma boite hotmail - Guide
- Se connecter a chromecast - Guide
- Facebook se connecter à un autre compte - Guide
- Yahoo mail se connecter - Guide
7 réponses
Bonjour,
Applique ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
.
Applique ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
.
Ça n'a pas marché... c'est à dire ???
Tu as un message d'erreur ? Lequel ?
Montre nous ton code modifié...et COMPLET.
Et puid... indique nous si ton Script Est sur un serveur web ou tu es en local sur ton ordi ?
Tu as un message d'erreur ? Lequel ?
Montre nous ton code modifié...et COMPLET.
Et puid... indique nous si ton Script Est sur un serveur web ou tu es en local sur ton ordi ?
si tu veux je met ca
il me dit :
Erreur : SQLSTATE[HY000] [2002] Connection refused
<?php try{ $bdd =new PDO('mysql:host=legtux.org; dbname=site; charset=utf8', 'site', 'mdp'); // Activation des erreurs PDO $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); }?>
il me dit :
Erreur : SQLSTATE[HY000] [2002] Connection refused
ça vient de la base ..... donc... il te manque la partie où tu fais la requête SELECT pour récupérer ces données....
j'ai mis tout ce code
il me dit
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <title>Liste des news</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <style type="text/css"> h2, th, td { text-align:center; } table { border-collapse:collapse; border:2px solid black; margin:auto; } th, td { border:1px solid black; } </style> </head> <body> <h2><a href="rediger_news.php">Ajouter une news</a></h2> <?php try{ $bdd =new PDO('mysql:host=localhost; dbname=site; charset=utf8', 'site', 'mdp'); // Activation des erreurs PDO $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } //----------------------------------------------------- // Vérification 1 : est-ce qu'on veut poster une news ? //----------------------------------------------------- if (isset($_POST['titre']) AND isset($_POST['contenu'])) { $titre = addslashes($_POST['titre']); $contenu = addslashes($_POST['contenu']); // On vérifie si c'est une modification de news ou non. if ($_POST['id_news'] == 0) { // Ce n'est pas une modification, on crée une nouvelle entrée dans la table. mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . time() . "')"); } else { // On protège la variable "id_news" pour éviter une faille SQL. $_POST['id_news'] = addslashes($_POST['id_news']); // C'est une modification, on met juste à jour le titre et le contenu. mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_news'] . "'"); } } //-------------------------------------------------------- // Vérification 2 : est-ce qu'on veut supprimer une news ? //-------------------------------------------------------- if (isset($_GET['supprimer_news'])) // Si l'on demande de supprimer une news. { // Alors on supprime la news correspondante. // On protège la variable « id_news » pour éviter une faille SQL. $_GET['supprimer_news'] = addslashes($_GET['supprimer_news']); mysql_query('DELETE FROM news WHERE id=\'' . $_GET['supprimer_news'] . '\''); } ?> <table><tr> <th>Modifier</th> <th>Supprimer</th> <th>Titre</th> <th>Date</th> </tr> <?php $retour = mysql_query('SELECT * FROM news ORDER BY id DESC'); while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news. { ?> <tr> <td><?php echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td> <td><?php echo '<a href="liste_news.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td> <td><?php echo stripslashes($donnees['titre']); ?></td> <td><?php echo date('d/m/Y', $donnees['timestamp']); ?></td> </tr> <?php } // Fin de la boucle qui liste les news. ?> </table> </body> </html>
il me dit
Fatal error: Uncaught Error: Call to undefined function mysql_query() in /var/www/legtux.org/users/site/www/V1/news/index.php:81 Stack trace: #0 {main} thrown in /var/www/legtux.org/users/site/www/V1/news/index.php on line 81
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Hello,
Je pense que tu suis "bêtement" plusieurs tutos sans trop savoir ce que tu fais...
mysql_query (obsolète) et PDO ne vont pas ensemble.
Essaie plutôt :
OU
A adapter pour ton cas
D'autres exemples ici :
https://www.php.net/manual/fr/pdo.prepared-statements.php
Je pense que tu suis "bêtement" plusieurs tutos sans trop savoir ce que tu fais...
mysql_query (obsolète) et PDO ne vont pas ensemble.
Essaie plutôt :
$stmt = $bdd->prepare("SELECT * FROM news ORDER BY id DESC"); if ($stmt->execute()) { while ($donnees = $stmt->fetchAll(PDO::FETCH_ASSOC)) { // affichage ici } }
OU
$stmt = $dbh->prepare("SELECT * FROM news ORDER BY id DESC"); $stmt ->execute(); $result = $stmt ->fetchAll(PDO::FETCH_ASSOC); // print_r($result); // ici un foreach ou un while
A adapter pour ton cas
D'autres exemples ici :
https://www.php.net/manual/fr/pdo.prepared-statements.php
merci j'arrete car c'est trop dur pour moi je laisse pour ceux qui on un cerveau inteligent je laisse pour des mecs car c'est pas pour les femes
<?php try{ $bdd =new PDO('mysql:host=localhost; dbname=site; charset=utf8', 'site', 'mdp'); // Activation des erreurs PDO $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } $stmt = $bdd->prepare("SELECT * FROM news ORDER BY id DESC"); if ($stmt->execute()) { while ($donnees = $stmt->fetchAll(PDO::FETCH_ASSOC)) { echo stripslashes($donnees['titre']); } } ?>
Hello :)
Il faut persévérer !
Une erreur de ma part, c'était fetch pour le while()...
OU
OU
Les 3 fonctionnent parfaitement.
Il faut persévérer !
Une erreur de ma part, c'était fetch pour le while()...
$stmt = $bdd->prepare('SELECT * FROM news ORDER BY id DESC'); if ($stmt->execute()) { while ($donnees = $stmt->fetch(PDO::FETCH_ASSOC)) { echo $donnees['titre']; } }
OU
$stmt = $bdd->prepare('SELECT * FROM news ORDER BY id DESC'); $stmt ->execute(); $donnees = $stmt ->fetchAll(PDO::FETCH_ASSOC); foreach ($donnees as $key => $value) { echo $value['titre']; }
OU
$stmt = $bdd->prepare('SELECT * FROM news ORDER BY id DESC'); $stmt ->execute(); $donnees = $stmt ->fetchAll(PDO::FETCH_OBJ); foreach ($donnees as $key => $value) { echo $value->titre; }
Les 3 fonctionnent parfaitement.
Meerci, ca fonction,ne
mais qu'es ce qui est mieu de mettre le 1 er code ou 2 ème code ou le 3 ème code
je penses qu'il y a un code mieux que les autres ;)
sinon qui décide de change le code car mon code marchait en 2011
sil faut que je change le code pour rentrer a la base donnée tout les 5 ans
il faut qu'on nous previent par mail ;)
mais qu'es ce qui est mieu de mettre le 1 er code ou 2 ème code ou le 3 ème code
je penses qu'il y a un code mieux que les autres ;)
sinon qui décide de change le code car mon code marchait en 2011
sil faut que je change le code pour rentrer a la base donnée tout les 5 ans
il faut qu'on nous previent par mail ;)
Il n'y a pas de codes mieux que les autres, juste de bonnes pratiques.
Personnellement, j'utilise le 3 pour garder le concept "objet" dans mon code.
Personne ne change ton code, mais les langages évoluent. Il est normal que tes requêtes fonctionnaient en 2011 mais plus aujourd'hui, les versions de PHP changent et les anciennes ne sont plus supportées.
https://fr.wikipedia.org/wiki/PHP
Personnellement, j'utilise le 3 pour garder le concept "objet" dans mon code.
Personne ne change ton code, mais les langages évoluent. Il est normal que tes requêtes fonctionnaient en 2011 mais plus aujourd'hui, les versions de PHP changent et les anciennes ne sont plus supportées.
https://fr.wikipedia.org/wiki/PHP
je met le code si quelqu'un veux ;)
<?php try{ $bdd =new PDO('mysql:host=localhost; dbname=site; charset=utf8', 'site', 'mdp'); // Activation des erreurs PDO $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH $bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); } catch(PDOException $e) { die('Erreur : ' . $e->getMessage()); } // la requette pour recuperer les infos à la base sql // ASC pour afficher dans l'ordre croissant. // DESC pour l'afficher dans l'ordre decroissant $stmt = $bdd->prepare('SELECT * FROM news ORDER BY id ASC'); // ensuite on vas afficher les infos de la news if ($stmt->execute()) { while ($donnees = $stmt->fetch(PDO::FETCH_ASSOC)) { // on affiche le titre echo $donnees['titre']; // on affiche le contenu echo $donnees['contenu']; // on affiche le pseudo echo $donnees['pseudo']; // on affich la date sous forme 01/01/2019 $date = DateTime::createFromFormat('Y-m-d H:i:s', $donnees['date']); echo $date->format('d/m/Y'); echo'<br />'; } }?>
sinon tempis je me debrouilerais sans le sql ;)