Aide pour afficher mes données une seule fois

Signaler
Messages postés
5
Date d'inscription
jeudi 12 février 2009
Statut
Membre
Dernière intervention
2 août 2009
-
jackie0000
Messages postés
22
Date d'inscription
dimanche 24 juillet 2005
Statut
Membre
Dernière intervention
3 août 2009
-
slt amis programmeurs
j'ai un probleme d'affichage de données de ma base de données.au fait lorske je veux afficher les ces donnees ,elles s'affiche plusieurs fois alors ke je voudrais afficher la donnees une seule fois .je tien a vous dire ke ma base de donnes contient plusieurs et je voudrai les aficher un seule fois
NB:c'un site d'inscription en ligne ki contient plusieur tables

je vous donne moi code pour ke vous puissiez apporter des correction

<?php
// information pour la connection à le DB
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'projet';

// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());

// requête SQL qui compte le nombre total d'enregistrements dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT matetud,nometud, prenetud, mailetud, datetud, lietud, nationetud, sexetud, peretud, meretud, sitetud, adresetud, teletud, preclas, annee ,statut , libcyc, filiere, eta_prec, nivo FROM etudiant ,classe,statut,cycle,filiere,nveau' ;

$result = mysql_query($select ,$link) or die ('Erreur : '.mysql_error() );

$total = mysql_fetch_array($result );


// si on a récupéré un résultat on l'affiche.
if($total) {
// début du tableau
echo ''.\"\n\";
// première ligne on affiche les titres prénom et surnom dans 2 colonnes
echo '----
';
echo '<g>Matricule</g>, ';
echo '<g>Nom</g>, ';
echo '<g>Prénoms</g>, ';
echo '<g>E-mail</g>, ';
echo '<g>Date de Naissance</g>, ';
echo '<g>Lieu de Naissance</g>, ';
echo '<g>Sexe</g>, ';
echo '<g>Nationalité</g>, ';
echo '<g>Nom et Prénoms du Père</g>, ';
echo '<g>Nom et Prénom de la mère</g>, ';
echo '<g>Adresse géographique</g>, ';
echo '<g>Adresse Postale</g>, ';
echo '<g>Téléphone</g>, ';
echo '<g>Classe précédente</g>, ';
echo '<g>Année-Scolaire </g>, ';
echo '<g>Statut</g>, ';
echo '<g>Cycle</g>, ';
echo '<g>Établissement précédent</g>, ';
echo '<g>Filière à suivre</g>, ';
echo '<g>Niveau</g>, ';

echo ''.\"\n\";
// lecture et affichage des résultats sur 15 colonnes, 1 résultat par ligne.
while($row = mysql_fetch_array($result)) {
echo '----
';
echo ''.$row['matetud'].', ';
echo ''.$row['nometud'].', ';
echo ''.$row['prenetud'].', ';
echo ''.$row['mailetud'].', ';
echo ''.$row['datetud'].', ';
echo ''.$row['lietud'].', ';
echo ''.$row['nationetud'].', ';
echo ''.$row['sexetud'].', ';
echo ''.$row['peretud'].', ';
echo ''.$row['meretud'].', ';
echo ''.$row['sitetud'].', ';
echo ''.$row['adresetud'].', ';
echo ''.$row['teletud'].', ';
echo ''.$row['preclas'].', ';
echo ''.$row['annee'].', ';
echo ''.$row['statut'].', ';
echo ''.$row['libcyc'].', ';
echo ''.$row['eta_prec'].', ';
echo ''.$row['filiere'].', ';
echo ''.$row['nivo'].', ';
echo ''.\"\n\";
}
echo '
';
// fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result($result);


?>

2 réponses

Messages postés
197
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
20 février 2013
1
Bonsoir,

$select = 'SELECT matetud,nometud, prenetud, mailetud, datetud, lietud, nationetud, sexetud, peretud, meretud, sitetud, adresetud, teletud, preclas, annee ,statut , libcyc, filiere, eta_prec, nivo FROM etudiant ,classe,statut,cycle,filiere,nveau' ; 


et quelles sont les relations entre tes tables? comment tu lies la table etudiants avec classe et avec statut et avec cycle et avec filiere et avec niveau (table dans le from)?

fait une recherche sur les jointures entre tables (natural join, inner join, left join, ...) en SQL, je pense que tu trouveras la solution (n'ayant pas la structure des tables, je ne suis pas devin pour donner les relations à mettre dans ta requête)

bonne soirée
Messages postés
22
Date d'inscription
dimanche 24 juillet 2005
Statut
Membre
Dernière intervention
3 août 2009

d'abord essaye de re concevoir la base car c'est un peu voir même trop tiré par les cheveux.
le faite d'avoir un affichage multiple indique que que dans cette base on a une redondance de données. utilise les foreign keys pour eviter ces erreurs et controle ca lors de la saisie.