Erreur : could not find driver / Problème base de données [Fermé]

Signaler
Messages postés
171
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
18 décembre 2013
-
Messages postés
171
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
18 décembre 2013
-
Bonjour,

J'ai un problème dans un code php, qui rentrerait des valeurs dans une base de données. (score, identifiant etc.. pour un jeu en ligne) Le code d'erreur qui m'est retourné est Erreur : could not find driver

Je suis sous un serveur free et le code marche bien en local. Testez le sur la page : http://costafan.free.fr/ProjetIF10/Jeu.php
Voici mon code :

score.php :

<p>Poster votre score</p>
<form action="post_score.php" method="post">
<label for="identifiant">Indiquez ici un identifiant</label><input type="text" id="identifiant" name="identifiant" />
<label for="score">Votre score : </label><input type="text" id="score" name="score" /><br />
<input type="submit" value="Envoyer" />
</form>

<div id = "score">
<?php
try{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=jeu', 'root', '', $pdo_options );
}
catch(Exception $e)

{
// En cas d'erreur précédemment, on affiche un message et on arrête tout
die('Erreur : '.$e->getMessage()." Et :".phpinfo());


}
// On récupère tout le contenu de la table minichat
$reponse = $bdd->query('SELECT * FROM jeu ORDER BY score DESC');

// On affiche chaque entrée une à une
while ($donnees = $reponse->fetch())
{
echo '<p><strong>' . htmlspecialchars($donnees['identifiant']) . '</strong> : ' . htmlspecialchars($donnees['score']) .'<font size="1"> '.$donnees['date'].'</font>'.'</p>';

}

$reponse->closeCursor(); // Termine le traitement de la requête

?>
</div>


Fichier post_score.php
<?php
if(!empty($_POST['identifiant'])){
if(!empty($_POST['score'])){
try{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=jeu', 'root', '', $pdo_options );

$req = $bdd->prepare('INSERT INTO jeu(identifiant, score, date) VALUES(:identifiant, :score, NOW())');
$req->execute(array(
'score' => $_POST['score'],
'identifiant' => $_POST['identifiant'],
));

echo 'le score à bien été enregistré!';
}




catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
}
}
?>
--
Nous sommes faits avec des defauts pour que chacun prenne de l'importance aux yeux des autres...

4 réponses

Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015

je crois bien que la igne d 'erreur est bienexplicite , il ne trouve pas le driver pdo sur le serveur donc soit le module n est pas activé par ton hebergeur donc essaie de desactiver le module pdo en local tu va voir la reponse et compare l'erreur son le serveur
Messages postés
171
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
18 décembre 2013
4
C'est bon ça marche, j'ai enlevé le langage PDO, et je suis passé en mysql merci ! :)
J'ai un autre problème maintenant j'aimerai chaque joueur, après avoir rentré son id, puisse voir où sont meilleur score se situe par rapport aux autres..
Ma base de donnée est comme ceci:

ID    identifiant      score     date
1 steph 3200 ...
2 steph 4000 ...
3 adrien 2800 ...
4 tonton 5000 ...

En l'occurence j'aimerai avoir dans un tableau en retour :

tonton : 5000
steph : 4000
adrien : 2800

Je ne connais pas la ou les fonctions à utiliser, je suis un peu nouveau là dedans, un coup de main serait pas de trop ! :)
Messages postés
131
Date d'inscription
dimanche 13 janvier 2013
Statut
Membre
Dernière intervention
17 octobre 2015

ici je vois que ce joueur steph a deux entreer dans ta base de donnee, pourqoui ne pas faire un table score et qui aurra pour clé etrangère l 'id du joueur comme ceci :
table joueur :
id , identifiant,....
table socre
id,valeur,id_joueur
comme cela on va recuperer tout les score de ce joueur et on va ensuite faire le travail car cette maniere va te faciliter grandement la vie . essaie de t'organiser et pour l'affichage on va gerer cela ok
Messages postés
171
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
18 décembre 2013
4
J'ai pris quelques cours et je pense que mon résultat est pas trop mal.. Je pense qu'il manque encore deux ou trois trucs mais bon..
http://costafan.free.fr/ProjetIF10/index.php