PHP PDO

Résolu/Fermé
izangard_sda Messages postés 17 Date d'inscription mercredi 7 novembre 2012 Statut Membre Dernière intervention 30 avril 2015 - 7 nov. 2012 à 00:25
izangard_sda Messages postés 17 Date d'inscription mercredi 7 novembre 2012 Statut Membre Dernière intervention 30 avril 2015 - 9 nov. 2012 à 16:56
Bonjour,

j'ai vraiment besoin de votre aide ! Si quelqu'un pouvait m'aider ça serait super. Alors je dois réaliser un genre de "site" en php que j'ai fini de créer mais petit problème: je dois effectuer la connexion en PDO ! Ce que je n'ait jamais vu auparavant avant, et que je n'ait pas le temps de voir car je dois rendre ce travail dans les jours qui arrivent. J'ai beaucoup cherché au début c'est vrai, j'ai réalisé une connexion en PDO mais ma connexion ne marche plus du tout ! On ma dit de changer toute les requêtes mysql, je ne voit pas du tout quoi remplacer par quoi... Je me tourne donc vers vous, quelqu'un pourrait-il regarder mes fichiers ?
A voir également:

6 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
Modifié par Heliotte le 7/11/2012 à 08:15
Fichiers ? Où êtes-vous ?
Lien pour te permettre de le réaliser : https://www.php.net/manual/fr/pdo.connections.php
0
izangard_sda Messages postés 17 Date d'inscription mercredi 7 novembre 2012 Statut Membre Dernière intervention 30 avril 2015
7 nov. 2012 à 16:31
Je me suis bien aidé de ce site, super sympa par ailleurs, mais ça ne marche toujours pas. Je ne peux pas télécharger mes fichiers ici donc j'écris mon code ici. Je n'arrive pas à me connecter.

Tout d'abord j'ai un fichier config.php :

<?php

$PARAM_hote='localhost'; // le chemin vers le serveur
$PARAM_bdd='GSB'; // le nom de votre base de données
$PARAM_user='root'; // nom d'utilisateur pour se connecter
$PARAM_mdp=''; // mot de passe de l'utilisateur pour se connecter

try
{


//On demarre les sessions
session_start();

/******************************************************
----------------Configuration Obligatoire--------------
Veuillez modifier les variables ci-dessous pour que l'
espace membre puisse fonctionner correctement.
******************************************************/

//On se connecte a la base de donnee
$connexion = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_bdd, $PARAM_user, $PARAM_mdp);


//Email du webmaster
$mail_webmaster = 'example@example.com';

//Adresse du dossier de la top site
$url_root = 'http://www.example.com/';

/******************************************************
----------------Configuration Optionelle---------------
******************************************************/

//Nom du fichier de laccueil
$url_home = 'index.php';

//Nom du design
//$design = 'default';
}
catch(Exception $e)
{
echo 'Une erreur est survenue !';
die();
}
?>


Puis j'ai mon fichier connexion.php :

<?php
include('config.php');
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="CSS/style.css" rel="stylesheet" title="Style" />
<title>Connexion</title>
</head>

<body>
<div id="conteneur">
<a href="index.php"><h1 id="header"></h1></a>
<ul id="menu">
<li id="bouton"><a href="index.php">Accueil</a></li>
<li id="bouton"><a href="news.php">News</a></li>
<li id="bouton"><a href="newsletter.php">Newsletter</a></li>
</ul>

<?php
//Si lutilisateur est connecte, on le deconecte
if(isset($_SESSION['username']))
{
//On le deconecte en supprimant simplement les sessions username et userid
unset($_SESSION['username'], $_SESSION['userid']);
?>
<div style="text-align:center;" class="message">Vous avez bien été déconnecté.<br />
</div>
<meta http-equiv="Refresh" content="2;URL=index.php">
<?php
}
else
{
$ousername = '';
//On verifie si le formulaire a ete envoye
if(isset($_POST['username'], $_POST['password']))
{
//On echappe les variables pour pouvoir les mettre dans des requetes SQL
if(get_magic_quotes_gpc())
{
$ousername = stripslashes($_POST['username']);
$username = mysql_real_escape_string(stripslashes($_POST['username']));
$password = stripslashes($_POST['password']);
}
else
{
$username = mysql_real_escape_string($_POST['username']);
$password = $_POST['password'];
}
//On recupere le mot de passe de lutilisateur
$req =$connexion->query('select password,id_admin from administrateur where username="'.$username.'"');

$dn =$req->setFetchMode(PDO::FETCH_OBJ); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet

//On le compare a celui quil a entre et on verifie si le membre existe
if($dn['password']==$password and mysql_num_rows($req)>0)
{
//Si le mot de passe es bon, on ne vas pas afficher le formulaire
$form = false;
//On enregistre son pseudo dans la session username et son identifiant dans la session userid
$_SESSION['username'] = $_POST['username'];
$_SESSION['userid'] = $dn['id_admin'];
?>
<div style="text-align:center;" class="message">Vous avez bien été connecté. Vous pouvez accéder aux créations de news et newsletter.<br /><br />
</div>
<meta http-equiv="Refresh" content="2;URL=index.php">
<?php
}
else
{
//Sinon, on indique que la combinaison nest pas bonne
$form = true;
$message = 'La combinaison que vous avez entré n\'est pas bonne.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div style="text-align:center;" class="message">'.$message.'</div><br />';
}
//On affiche le formulaire
?>
<div style="text-align:center;" class="content">
<form action="connexion.php" method="post">

Veuillez entrer vos identifiants pour vous connecter:<br /><br />
<center>
<table>
<tr>
<td>
<label for="username">Nom d'utilisateur:</label></td><td><input type="text" name="username" id="username" value="<?php echo htmlentities($ousername, ENT_QUOTES, 'UTF-8'); ?>" /><br />
</td>
</tr>
<tr>
<td>
<label for="password">Mot de passe:</label></td><td><input type="password" name="password" id="password" /><br />
</td>
</tr>
</table>
</center><br />
<input type="submit" value="Connexion" />


</form>
</div>
<?php
}
}
?>


</div>
</body>
</html>
0
Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
7 nov. 2012 à 18:25
Il y a encore de nonnes explication ici : https://fmaz.developpez.com/tutoriels/php/comprendre-pdo/#LI.b
0
izangard_sda Messages postés 17 Date d'inscription mercredi 7 novembre 2012 Statut Membre Dernière intervention 30 avril 2015
9 nov. 2012 à 00:44
Mercii ! Je vais y jeter un coup d'oeil en espérons que ça m'avance :)
0

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

Posez votre question
dannydouby Messages postés 139 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 1 juin 2013 6
9 nov. 2012 à 06:36
tien, c'est le code que j'utilise toujours pour me connecter à une base de donné, il et simple et facile à modifier:


<?php  
try
{
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=TON_HOST;dbname=TA_BDD', 'TON_NOM_UTILISATEUR', 'TON_MOT_DE_PASSE', $pdo_options);
    $reponse = $bdd->query('SELECT * FROM ta_table');






   //tu met TOUT CE QUI VIEN DE TA BDD dans while comme ceci:
    
while ($donnees = $reponse->fetch()){
       $donnees["le_nom_du_champ_de_ta_table"];
}

//si tu n'a pas besoin des données de ta bdd, tu peux continuer après le while







$reponse->closeCursor(); 

}
catch(Exception $e)
{
    die('Erreur : '.$e->getMessage());
}
?>

0
izangard_sda Messages postés 17 Date d'inscription mercredi 7 novembre 2012 Statut Membre Dernière intervention 30 avril 2015
9 nov. 2012 à 16:56
Génial ! j'ai réussi ça marche :D Merci beaucoup à vous tous !
0