Appeler des tables sql pour les afficher
Bruno93_fr
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
Bruno93_fr Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bruno93_fr Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
un petit souci....
j'explique
j'ai à la base une table qui contient les noms de organisateurs d'un concours, PARIS, MEAUX, AULNAY, etc etc....
ensuite avec les pages de mon espace perso j'ai donné la possibilité aux membres de s'inscrire à tel ou tel concours....
alors est générée une table par concours , table ayant le nom PARIS ou MEAUX ou etc et qui contient les données du compétiteur inscrit (nom, prenom, date et heure choisie , numero de licence etc... jusque là tout est opérationnel.
maintenant je souhaite afficher de ces tables pour que tout le monde puisse savoir qui est inscrit au même concours que lui....
et c'est là que ça se complique... je ne veut pas afficher toutes les tables de ma base mais uniquement celles qui ont été créées.
mon code
voilà la création de la table d'un concours avec l'ajout des données:
cette partie fonctionne....
ensuite pour afficher les tables:
la 1er partie pour récupérer les noms et discipline dans le caption des tableaux à afficher
puis la 2ème partie pour récupérer les données id, nom heure jour etc etc et les afficher dans le tableau
et là ça ne marche pas j'ai un messageErreur SQL !
Resource id #5
Liste des Inscrits pour le Tir en Salle de DRAVEIL numéro samedi Dimanche Heure Nom Prénom Licence Catégorie tarif
(on vois juste que les variables $discipli et $organis sont donc bien définies elles sont affichées....
je ne vois pas où ça peut clocher.....
l'erreur semble venir (surement même) de la zone:
si vous avez une idée !!!!
un petit souci....
j'explique
j'ai à la base une table qui contient les noms de organisateurs d'un concours, PARIS, MEAUX, AULNAY, etc etc....
ensuite avec les pages de mon espace perso j'ai donné la possibilité aux membres de s'inscrire à tel ou tel concours....
alors est générée une table par concours , table ayant le nom PARIS ou MEAUX ou etc et qui contient les données du compétiteur inscrit (nom, prenom, date et heure choisie , numero de licence etc... jusque là tout est opérationnel.
maintenant je souhaite afficher de ces tables pour que tout le monde puisse savoir qui est inscrit au même concours que lui....
et c'est là que ça se complique... je ne veut pas afficher toutes les tables de ma base mais uniquement celles qui ont été créées.
mon code
voilà la création de la table d'un concours avec l'ajout des données:
<?php $sql_query="CREATE TABLE IF NOT EXISTS $organisateur ( id INT(11) auto_increment, samedi varchar(12), dimanche varchar(12), heure varchar(6), nom varchar(25), prenom varchar(25), licence varchar(7), categorie varchar (5), tarif varchar(5), PRIMARY KEY (id) ) ENGINE= MyISAM"; // Requête $result_query= mysql_query($sql_query) // Exécution de la requête ?> <?php //on entre les données concours et utilisateur dans la base de donnees du concours qui vient detre creee $sql_query="INSERT INTO $organisateur(id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif ) values ('', '$samedi', '$dimanche', '$heure', '$nom', '$prenom', '$licence', '$categorie', '$tarif' )"; $result_query = mysql_query($sql_query) //execution de la requete ?>
cette partie fonctionne....
ensuite pour afficher les tables:
<?php //On recupere organisateur de la table concours $req1 = mysql_query('SELECT discipline, organisateur FROM concours'); while($idconcours= mysql_fetch_array($req1)) { ?> <?php $organis=$idconcours['organisateur']; $discipli=$idoncours['discipline']; ?> <div class="tableau"> <table> <caption><strong> Liste des Inscrits pour le <?php echo ''.$discipli.''; ?> de <?php echo ''.$organis.''; ?></strong></caption> <tr> <th>numéro</th> <th>samedi</th> <th>Dimanche</th> <th>Heure</th> <th>Nom</th> <th>Prénom</th> <th>Licence</th> <th>Catégorie</th> <th>tarif</th> </tr> <?php //on recupere les donnees des inscrits des tables correspondantes aux concours pour les afficher $req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM ' .$organis ); while($dnn = mysql_fetch_array($req2) or die('Erreur SQL !<br><font size="2">'.$req2.'<br>'.mysql_error())); { ?> <tr> <td><?php echo $dnn['id']; ?></td> <td><?php echo $dnn['samedi']; ?></td> <td><?php echo $dnn['dimanche']; ?></td> <td><?php echo $dnn['heure']; ?></td> <td><?php echo $dnn['nom']; ?></td> <td><?php echo $dnn['prenom']; ?></td> <td><?php echo $dnn['licence']; ?></td> <td><?php echo $dnn['categorie']; ?></td> <td><?php echo $dnn['tarif']; ?></td> </tr> <?php }} ?> </table> </div>
la 1er partie pour récupérer les noms et discipline dans le caption des tableaux à afficher
puis la 2ème partie pour récupérer les données id, nom heure jour etc etc et les afficher dans le tableau
et là ça ne marche pas j'ai un messageErreur SQL !
Resource id #5
Liste des Inscrits pour le Tir en Salle de DRAVEIL numéro samedi Dimanche Heure Nom Prénom Licence Catégorie tarif
(on vois juste que les variables $discipli et $organis sont donc bien définies elles sont affichées....
je ne vois pas où ça peut clocher.....
l'erreur semble venir (surement même) de la zone:
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM ' .$organis ); while($dnn = mysql_fetch_array($req2) or die('Erreur SQL !<br><font size="2">'.$req2.'<br>'.mysql_error()));
si vous avez une idée !!!!
A voir également:
- Appeler des tables sql pour les afficher
- Appeler en privé - Guide
- Table des matières word - Guide
- Je peux appeler mais pas recevoir d'appel sur mon portable - Forum Téléphones & tablettes Android
- Afficher toutes les lignes masquées excel ✓ - Forum Excel
- Afficher les commentaires word - Guide
5 réponses
slt
essaye ça:
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM $organis ');
essaye ça:
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM $organis ');
Nhay
Messages postés
838
Date d'inscription
Statut
Membre
Dernière intervention
126
ça ne fera pas mieux, les variables ne sont pas interprété sous apostrophes, mais seulement sous guillemet d'après ma mémoire, de plus, si ça requête fini par une variable, il n'a pas besoin de l'a rouvrir pour l'a refermer
while($dnn = mysql_fetch_array($req2) or die('Erreur SQL !<br><font size="2">'.$req2.'<br>'.mysql_error())); {
Ceci me paraît bien étrange, premièrement, je ne vois pas l'utilité du point-virgule.
Deuxièmement, dans ton while, mysql_fetch_array sera tôt ou tard à false (Sinon tu serait dans une boucle infini), et provoquera donc le die qui stoppera le script, je ne pense pas que ce soit voulu :)
Troisièmement, enlève l'espace entre la virgule et le points de la requête :D
Par contre, je ne vois pas l'intérêt que tu as de faire une table par organisateurs, tu risque de te retrouver avec pleins de table n'ayant qu'une tuples, à moins que j'ai loupé quelque chose.
Bonjour Nhay, et astuce72
astuce72 le code marche pas....j'avais essayé
j'ai raccourci la ligne du while à :
c'est déjà un peu mieux plus de "resource id #5" affiché. il y à bien certains tableaux où j'ai des données qui sont affichés MAIS il y à aussi tous les autres tableaux vides qui sont appelés et là ça sort un message d'erreur
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 181
ce qui parait normal si la table est vide, il faudrait que j'indique à la requete d'afficher les tableaux non vides mais je ne suis pas assez calé en programmation pour ça (j'ai débuté il y à 2 semaines.
alors je viens d'essayer de faire:
et là gros message d'erreur
Parse error: syntax error, unexpected T_STRING in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 180
à mon avis la syntaxe colle pas du tout ....
quant au fait d'avoir plein de tables affichées ce n'est pas un problème, bien au contraire.
lorsque les personnes s'inscrivent à un concours une table se crée et s'affiche. ensuite je souhaite que le gestionnaire en charge des compétitions au club puisse imprimer les tableaux (un à un ) en fait que ça puisse générer un PDF par tableau une fois qu'on clique sur imprimer pour envoyer la liste des inscrits à l'organisateur....
mais je n'en suis pas encore là :)
autre chose pour les tableaux , si le compétiteur remet les mêmes paramètres au formulaire et valide la table compile à nouveaux les mêmes données et les intègre. je ne sais pas comment dire à ma ligne INSERT into de vérifier si la ligne existe déjà et auquel cas de ne pas intégrer les nouvelles données....
j'ai essayé avec REPLACE into mais ça créé quand même la ligne....
c'est à la ligne
si tu as des idées sur tout ça je suis preneur :)
merci !
astuce72 le code marche pas....j'avais essayé
j'ai raccourci la ligne du while à :
while($dnn = mysql_fetch_array($req2))
c'est déjà un peu mieux plus de "resource id #5" affiché. il y à bien certains tableaux où j'ai des données qui sont affichés MAIS il y à aussi tous les autres tableaux vides qui sont appelés et là ça sort un message d'erreur
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 181
ce qui parait normal si la table est vide, il faudrait que j'indique à la requete d'afficher les tableaux non vides mais je ne suis pas assez calé en programmation pour ça (j'ai débuté il y à 2 semaines.
alors je viens d'essayer de faire:
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM ' .$organis WHERE num_rows>0 );
et là gros message d'erreur
Parse error: syntax error, unexpected T_STRING in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 180
à mon avis la syntaxe colle pas du tout ....
quant au fait d'avoir plein de tables affichées ce n'est pas un problème, bien au contraire.
lorsque les personnes s'inscrivent à un concours une table se crée et s'affiche. ensuite je souhaite que le gestionnaire en charge des compétitions au club puisse imprimer les tableaux (un à un ) en fait que ça puisse générer un PDF par tableau une fois qu'on clique sur imprimer pour envoyer la liste des inscrits à l'organisateur....
mais je n'en suis pas encore là :)
autre chose pour les tableaux , si le compétiteur remet les mêmes paramètres au formulaire et valide la table compile à nouveaux les mêmes données et les intègre. je ne sais pas comment dire à ma ligne INSERT into de vérifier si la ligne existe déjà et auquel cas de ne pas intégrer les nouvelles données....
j'ai essayé avec REPLACE into mais ça créé quand même la ligne....
c'est à la ligne
$sql_query="INSERT INTO $organisateur(samedi, dimanche, heure, nom, prenom, licence, categorie, tarif ) values ('$samedi', '$dimanche', '$heure', '$nom', '$prenom', '$licence', '$categorie', '$tarif' )"; $result_query = mysql_query($sql_query) //execution de la requete
si tu as des idées sur tout ça je suis preneur :)
merci !
Pour ta table vide :
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM ' .$organis );
if(mysql_num_rows($req2)>0){
while($dnn = mysql_fetch_array($req2)){...}
}
Pour tes lignes en double tu peut toujours faire une requête SELECT qui recherchera la ligne, si elle exist, tu ne fait rien, sinon, tu l'a crée.
Le replace fonctionne aussi, à condition d'avoir un index unique si les champs qui doivent l'être.
$req2 = mysql_query('SELECT id, samedi, dimanche, heure, nom, prenom, licence, categorie, tarif FROM ' .$organis );
if(mysql_num_rows($req2)>0){
while($dnn = mysql_fetch_array($req2)){...}
}
Pour tes lignes en double tu peut toujours faire une requête SELECT qui recherchera la ligne, si elle exist, tu ne fait rien, sinon, tu l'a crée.
Le replace fonctionne aussi, à condition d'avoir un index unique si les champs qui doivent l'être.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai intégré ta ligne mais ça ne fonctionne pas mieux pour mon cas
message:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 157
les tables sont toutes affichées avec ce message
je cherche de mon coté
message:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /mnt/webb/e1/83/52028883/htdocs/espace_membre/liste.php on line 157
les tables sont toutes affichées avec ce message
je cherche de mon coté