ricardo

bonjour les amis j'ai fais une requête de sélection avec PDO sous forme de fonction mais je ne parviens pas a récupérer le résultat s'il vous plais aider moi!!!
En effet mon code devra servir a sélectionner et afficher dans un tableau dans le premier <td> du premier <tr>, doit afficher "nom et prénom" la suite dans les autres <td> afficher les dates dont on a insérer les notes dans le premier <td> de chaque <tr>doit afficher le nom des eleves.

Le 07/05/2016 à 07:31
ricardo

m6 ca va j'ais trouvé!!!

Le 04/06/2016 à 16:54
jean

Sois plus précis que ça ...
Utilises-tu les requêtes préparées ? Ton code ? Une erreur ?
Il me semble qu'avec PDO tu peux renvoyer le résultat sous forme de tableau, si c'est le cas, tu fais ta requete : $req = $pdo->query('SELECT * FROM users WHERE id = 1');
après tu fais $req->fetch(PDO::FETCH_ASSOC);
Et si tu as par exemple une colonne "name" et "email" dans ta base de donnée, pour récupérer le nom, c'est $req['name'];

Le 07/05/2016 à 21:44
ricardo

voici mon probleme j'ai un code en PDO qui fonctionne a merveille mais si et seulement si tu les mettent sur la même page et je voulais séparer mon code des fonction comme nous avons l'habitude de le faire. voici le code:
///cei pour la date
function faireDate($pDate)
{
$jour = substr($pDate,8);
$mois = substr($pDate,5);
$annee = substr($pDate,0,4);
$tabMois = array('Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre');
$nvlDate = $jour." ".$tabMois[$mois-1]." ".$annee;
return $nvlDate;
}
//la requete de selection
$db = new PDO('mysql:host='.$dbhost.';dbname='.$dbname,$dbuser,$dbpswd);
$requete =$db->query( "SELECT e.nom, e.prenom, n.date, n.note "
."FROM eleve e, cours c, note n "
."WHERE e.id=n.id_eleve AND n.id_cours=c.id AND c.id=".$afficher
." ORDER BY n.date");
while($objet = $requete->fetchObject())
{
$prenom = ($objet->prenom)?" (".$objet->prenom.")":"";
$nom = $objet->nom.$prenom;
$tableau [$nom][$objet->date] = $objet->note;
}

print "<TABLE border=\"1\">";

print "<TR><TD>Nom et prénom";
foreach($tableau[$nom] as $date => $note)
{
print "<TD>".faireDate($date);
}
print "<TD>Moyenne";

foreach($tableau as $nom => $tabNotes)
{
print "<TR><TD>$nom";
$somme = 0;
foreach($tabNotes as $note)
{
print "<TD>$note";
$somme += $note;
}
print "<TD>";
printf ("%.2f", $somme/count($tabNotes));
}

print "</TABLE>";
}
padon j'ai besoin deu script de recuperation de cette fonction ci après!!!
merci d'avance!

Le 08/05/2016 à 15:17
jean

Premièrement, pourquoi n'utilises-tu pas une fonction de php ou de MySQL pour récupérer la date ? Il me semble que tu te prends un peu la tête.
Bref, c'est un détail, au cas où, tu as bien tes variables $dbhost, $dbname ...etc ?
Ensuite, pourquoi fais tu des requêtes avec des points ?
"SELECT e.nom, e.prenom, n.date, n.note "."FROM eleve e, cours c, note n "."WHERE e.id=n.id_eleve AND n.id_cours=c.id AND c.id=".$afficher." ORDER BY n.date"
Pourquoi ne fais tu pas "SELECT a,b,c FROM d WHERE c = '$variable' " ?

Le 09/05/2016 à 11:51
Connectez-vous pour pouvoir répondre