Tableau php
versa
Messages postés
60
Date d'inscription
Statut
Membre
Dernière intervention
-
TiboleParano Messages postés 498 Date d'inscription Statut Membre Dernière intervention -
TiboleParano Messages postés 498 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai créer un tableau et je vx créer une colonne qui permet d'afficher le nombre d'enregistrement qu'il y'a ds la 1ere colonne et qui se trouve d'ailleurs ds la bd c koi la requette que je dois utiliser et je vais la mettre ou? please help merci.
j'ai créer un tableau et je vx créer une colonne qui permet d'afficher le nombre d'enregistrement qu'il y'a ds la 1ere colonne et qui se trouve d'ailleurs ds la bd c koi la requette que je dois utiliser et je vais la mettre ou? please help merci.
A voir également:
- Tableau php
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
66 réponses
tu as initialisé $total=0; ?
est-ce que $req est bon ? (c'est pas la chaine de la requete, mais bien la requete appliquée stockée ?)
y as-til bien un <table> tout au début ? (oui c'est tout con mais bon ...)
et ensuite je te conseil un ptit truc pour tester les valeurs successives (perso j'aime bien voir ce qui se passe à l'interieur de la boucle, comment elle se déroule)
donc pour sa, rajout $test=''; tout au début, avant le tableau, et ensuit tu emplace ta boucle par :
et à la fin du code un ptit echo $test; et tu me copie les valeurs affichées, si et surtout si il y en a assez (s'il n'écrit qu'une ligne, c'est qu'il n'a lu qu'une ligne de ta BDD)
au fait, il t'affiche le tableau, toujours avec les bonnes valeurs ?
est-ce que $req est bon ? (c'est pas la chaine de la requete, mais bien la requete appliquée stockée ?)
y as-til bien un <table> tout au début ? (oui c'est tout con mais bon ...)
et ensuite je te conseil un ptit truc pour tester les valeurs successives (perso j'aime bien voir ce qui se passe à l'interieur de la boucle, comment elle se déroule)
donc pour sa, rajout $test=''; tout au début, avant le tableau, et ensuit tu emplace ta boucle par :
while ($li=mysql_fetch_array($req)) { ?> <tr> <th height="35" scope="row"><?php echo $li[0];?></th> <th scope="row"><?php echo $li[1];?> </th> <th scope="row"><?php echo ($li[1]/ $total);?></th> </tr> <?php $test .= 'valeur: '.$li[1].' total :'.$total.'<br/>'; $total+=$li[1]; }
et à la fin du code un ptit echo $test; et tu me copie les valeurs affichées, si et surtout si il y en a assez (s'il n'écrit qu'une ligne, c'est qu'il n'a lu qu'une ligne de ta BDD)
au fait, il t'affiche le tableau, toujours avec les bonnes valeurs ?
voici le tableau qui m'est affiché avec des valeurs correctes mais peuvent etre plusieurs valeurs
Intitule | Nombre | Taux
Gestion documentaire | 1 |
Non respect de la hauteur | |
maximale( 1,20m) des po | 1 |
|-----------------------
Total | 2 |
et voici mon code:
<body>
<?php
mysql_connect("localhost", "root","");
mysql_select_db("intra_qualite");
$req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' and etat='".$_POST["slt2"]."' group by nc.intitule");
$total=0;
$test='';
?>
<table width="470" height="107" border="1">
<tr>
<th width="179" height="27" scope="col">Intitule</th>
<th width="65" scope="col">Nombre</th>
<th width="65" scope="col">Taux</th>
</tr>
<?php
while ($li=mysql_fetch_array($req))
{
?>
<tr>
<th height="35" scope="row"><?php echo $li[0];?></th>
<th scope="row"><?php echo $li[1];?> </th>
<th scope="row"> </th>
</tr>
<?php
$test .= 'valeur: '.$li[1].' total :'.$total.'<br/>';
$total+=$li[1];
}
mysql_close();
?>
<tr>
<th height="35" scope="row">Total</th>
<th scope="row"><?php echo $total;?></th>
<th scope="row"> </th>
</tr>
</table>
alors comment calculer le tx apres avoir fait le total, et puisque il y a plusieurs enregistrement il me faut je crois une autre boucle ,mais je ne sais pas comment la créer.?!!!
Intitule | Nombre | Taux
Gestion documentaire | 1 |
Non respect de la hauteur | |
maximale( 1,20m) des po | 1 |
|-----------------------
Total | 2 |
et voici mon code:
<body>
<?php
mysql_connect("localhost", "root","");
mysql_select_db("intra_qualite");
$req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' and etat='".$_POST["slt2"]."' group by nc.intitule");
$total=0;
$test='';
?>
<table width="470" height="107" border="1">
<tr>
<th width="179" height="27" scope="col">Intitule</th>
<th width="65" scope="col">Nombre</th>
<th width="65" scope="col">Taux</th>
</tr>
<?php
while ($li=mysql_fetch_array($req))
{
?>
<tr>
<th height="35" scope="row"><?php echo $li[0];?></th>
<th scope="row"><?php echo $li[1];?> </th>
<th scope="row"> </th>
</tr>
<?php
$test .= 'valeur: '.$li[1].' total :'.$total.'<br/>';
$total+=$li[1];
}
mysql_close();
?>
<tr>
<th height="35" scope="row">Total</th>
<th scope="row"><?php echo $total;?></th>
<th scope="row"> </th>
</tr>
</table>
alors comment calculer le tx apres avoir fait le total, et puisque il y a plusieurs enregistrement il me faut je crois une autre boucle ,mais je ne sais pas comment la créer.?!!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jcomprend toujours pas ton histoire de taux ?
explique chaque colonne de ta bdd, quel est le but de chaque info ? je ne comprend pas grand chose, ou plutot je ne vois pas l'objectif du site ... aide moi :)
explique chaque colonne de ta bdd, quel est le but de chaque info ? je ne comprend pas grand chose, ou plutot je ne vois pas l'objectif du site ... aide moi :)
ok je vais essayer le plus que possible,
c un site intranet d'une sté on veux afficher dans un tableau des actions pour lesquelles j'ai crée une requete les extrait de la bdd. puis ce tableau s'affiche comme suite :
intitule | nombre| taux
| |
et voici ma requete:
$req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' group by nc.intitule");
intitule de l'action ,nombre: de l'action , taux : c est la division du nombre sur le total des nombres pour savoir le taux de l'action par raport à la totalité des actions .
j'éspere que ca été un peu claire.
j'attend ta reponse.
c un site intranet d'une sté on veux afficher dans un tableau des actions pour lesquelles j'ai crée une requete les extrait de la bdd. puis ce tableau s'affiche comme suite :
intitule | nombre| taux
| |
et voici ma requete:
$req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' group by nc.intitule");
intitule de l'action ,nombre: de l'action , taux : c est la division du nombre sur le total des nombres pour savoir le taux de l'action par raport à la totalité des actions .
j'éspere que ca été un peu claire.
j'attend ta reponse.
arf si sa y est ...
$total = somme des $nombre
$taux[i] = $nombre[i]/$total
donc, et je comprend quand tu dis qu'il faudrait "ue autre boucle" : avant de créer le tableau il nous faut connaitre $total, il nous faut faitre la somme des $nombres avant de créer le tableau
mais il y a mieux qu'une boucle :) une fonction sql nous donne la somme :)
$SUPER= mysql_query('SELECT SUM(count) AS resultat FROM table');
=> ceci fait la somme de toutes les cases de la colonne 'count' de la table 'table' et le stock dans $SUPER['resultat']
mais jme rapelle avoir vu que ta syntaxe sql est bizarre, je ne sais comment est organisé ta BDD, mais sa semble bien complexe et je pense (franchement) pas que la formul d'avant marchera, donc sinon tu recopies ceci:
(en fait je copie 2 fois la mm boucle de toute à l'heure, la première calcul le total, la 2e affiche la tableau
Voila, j'ai aussi supprimé le petit $test
et faudra que tu m'expliques dans ton tableau ==> Non respect de la hauteur | | :-?
$total = somme des $nombre
$taux[i] = $nombre[i]/$total
donc, et je comprend quand tu dis qu'il faudrait "ue autre boucle" : avant de créer le tableau il nous faut connaitre $total, il nous faut faitre la somme des $nombres avant de créer le tableau
mais il y a mieux qu'une boucle :) une fonction sql nous donne la somme :)
$SUPER= mysql_query('SELECT SUM(count) AS resultat FROM table');
=> ceci fait la somme de toutes les cases de la colonne 'count' de la table 'table' et le stock dans $SUPER['resultat']
mais jme rapelle avoir vu que ta syntaxe sql est bizarre, je ne sais comment est organisé ta BDD, mais sa semble bien complexe et je pense (franchement) pas que la formul d'avant marchera, donc sinon tu recopies ceci:
(en fait je copie 2 fois la mm boucle de toute à l'heure, la première calcul le total, la 2e affiche la tableau
$req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' and etat='".$_POST["slt2"]."' group by nc.intitule"); $total=0; while ($li=mysql_fetch_array($req)) { $total+=$li[1]; } //LA REQUETE A ETE UTILISE, ON LA RELANCE $req=mysql_query("select nc.intitule,count(nc.intitule) as total from nc inner join projet on nc.id_pjt=projet.id_pjt where projet.intitule like '".$_POST["combo"]."%' and etat='".$_POST["slt2"]."' group by nc.intitule"); ?> <table width="470" height="107" border="1"> <tr> <th width="179" height="27" scope="col">Intitule</th> <th width="65" scope="col">Nombre</th> <th width="65" scope="col">Taux</th> </tr> <?php while ($li=mysql_fetch_array($req)) { ?> <tr> <th height="35" scope="row"><?php echo $li[0];?></th> <th scope="row"><?php echo $li[1];?> </th> <th scope="row"><?php echo (($li/$total)*100); %</th> </tr> <?php } mysql_close(); ?> <tr> <th height="35" scope="row">Total</th> <th scope="row"><?php echo $total;?></th> <th scope="row"> </th> </tr> </table>
Voila, j'ai aussi supprimé le petit $test
et faudra que tu m'expliques dans ton tableau ==> Non respect de la hauteur | | :-?
hey hey tmavais repondu pendant kjte repondait, jpense que j'ai réussi a saisir le gros du résumé du fond dl'histoire ^^
j'espère que c'est cque tu voulais, moi sur ce, en bon fonctionnaire, je m'en va :P @demain et bon cod@ge !
j'espère que c'est cque tu voulais, moi sur ce, en bon fonctionnaire, je m'en va :P @demain et bon cod@ge !
ok pour le non respet de la hauteur c juste un intitule que la boucle a affiché dans le tableau c est un enragistrement, ok a demain alors
bonjour, oui ca a fonctionné je ne sais pas comment te remercier,il me reste un petit truc comment afficher slt 2 chiffres apres la virgule?
https://www.php.net/manual/en/function.round.php
dans la ligne
remplace
par
dans la ligne
echo '<tr><td>'.$lign[0].'</td><td>'.$lign[1].'</td><td>'.($lign[1]/$nombre).'%</td></tr>';
remplace
'.($lign[1]/$nombre).'
par
'.round(($lign[1]/$nombre),2).'
si je met ,2 il m'affiche rien apre le virgule mais si je met ,4 il m'affiche 2 nombres apres le virgule.
bizarre, sur le site de php manual ils disent:
echo round(3.6, 0); // 4
echo round(1.95583, 2); // 1.96
echo round(1241757, -3); // 1242000
essaye d'autres valeurs, mais bon tant que sa marche ... :)
echo round(3.6, 0); // 4
echo round(1.95583, 2); // 1.96
echo round(1241757, -3); // 1242000
essaye d'autres valeurs, mais bon tant que sa marche ... :)
bonjour
j'ai un autre probleme sur un autre tableau si tu vx bien m'aider.
j'ai un tableau qui contient des champs que je dois selectionner d'une table et des chps que je dois saisir dans une autre table.
et tt ca doit m'etre afficher dans le meme tableau alors si tu vx bien m'aider j'attends ta reponse.
j'ai un autre probleme sur un autre tableau si tu vx bien m'aider.
j'ai un tableau qui contient des champs que je dois selectionner d'une table et des chps que je dois saisir dans une autre table.
et tt ca doit m'etre afficher dans le meme tableau alors si tu vx bien m'aider j'attends ta reponse.
euh ouaip, toujour partant, mais j'aurais besoin de mieux comprendre le problème, tu pourrais peut-être t'essayer à une métaphore pour changer, histoire de rendre le tout compréhensible ? genre 'j'ai des joueurs de l'OM, des joueurs du PSG, mais sa me semble trop galère de les faire jouer dans la même équipe'
:P
sinon jpense que j'ai compris le "problème" qui n'en est pas un , en gros tu fais un tableau, et certaines colonnes viennent d'une table de données, d'autres colonnes sont remplies avec une autre table, that's it ?
ma po l'air bin compliqué :) post ce que t'as commencé comme bout dcode
:P
sinon jpense que j'ai compris le "problème" qui n'en est pas un , en gros tu fais un tableau, et certaines colonnes viennent d'une table de données, d'autres colonnes sont remplies avec une autre table, that's it ?
ma po l'air bin compliqué :) post ce que t'as commencé comme bout dcode
Bonjour, ca va
j'ai un autre petit prob le voici
j'ai une liste deroulante qui permet l'enregistrement ds une autre page et qui comprend des choix et a la fin j'ai mis autres, et je vx que apres avoir choisis autres une zone de texte s'affiche et au lieu que "autres" s'enregistre je veux enregistrer la valeur de cette zone de texte.
par exemple la liste comme ce :
bac
deug
licence
autres (si on choisis autre) la zone de texte s'affiche et s'enregistre dans le chapms des diplomes) j'espere que ca été claire et merci de repondre c urgent
j'ai un autre petit prob le voici
j'ai une liste deroulante qui permet l'enregistrement ds une autre page et qui comprend des choix et a la fin j'ai mis autres, et je vx que apres avoir choisis autres une zone de texte s'affiche et au lieu que "autres" s'enregistre je veux enregistrer la valeur de cette zone de texte.
par exemple la liste comme ce :
bac
deug
licence
autres (si on choisis autre) la zone de texte s'affiche et s'enregistre dans le chapms des diplomes) j'espere que ca été claire et merci de repondre c urgent
haaaa c'est trop con j'ai du créer exactement le même bout dcode pour mon site php mais actuellement mon pc n'as plus d'alim, mes codes sont inaccessibles
que je me rapelle, déja tu vas devoir utiliser du javascript, on en a pas parlé jusque là donc je sais pas si tu maitrises, on va voir sa
déja petite précision: le code que j'ai fait pour mon site permet d'envoyer automatiquement le formulaire (si ce n'est pas "Autre" qui est choisi) ici ce ne sera pas le cas. Mon formulaire permet aussi que: lorsqu'on quitte la zone de texte du nouveau choix, la zone redisparait, la valeur entrée est rajoutée à la liste et selectionnée. cela demanderait mon code car trop compliqué à refaire.
Ce code permet simplement de faire apparaitre une zone de texte si 'Autre' est selectionné dans la liste, par contre il te faudra traiter cette information sur ta page d'arrivée: si la valeur de la liste est 'Autre', alors je vais chercher la valeur passée dans la boite de texte secondaire
voilà, dsl du retard j'ai du le retester à cause d'un petit bug
have fun
que je me rapelle, déja tu vas devoir utiliser du javascript, on en a pas parlé jusque là donc je sais pas si tu maitrises, on va voir sa
déja petite précision: le code que j'ai fait pour mon site permet d'envoyer automatiquement le formulaire (si ce n'est pas "Autre" qui est choisi) ici ce ne sera pas le cas. Mon formulaire permet aussi que: lorsqu'on quitte la zone de texte du nouveau choix, la zone redisparait, la valeur entrée est rajoutée à la liste et selectionnée. cela demanderait mon code car trop compliqué à refaire.
Ce code permet simplement de faire apparaitre une zone de texte si 'Autre' est selectionné dans la liste, par contre il te faudra traiter cette information sur ta page d'arrivée: si la valeur de la liste est 'Autre', alors je vais chercher la valeur passée dans la boite de texte secondaire
<select name='diplome' onChange='if(this.value=="Autre")document.getElementById("zone_autre_diplome").style.display="block";'> <option value='Bac'>Bac</option> <option value='Deug'>Deug</option> <option value='Licence'>Licence</option> <option value='Autre'>Autre</option> </select> <span id='zone_autre_diplome' style='display:none;'> <input type='text' name='diplome_autre' /> </span>
voilà, dsl du retard j'ai du le retester à cause d'un petit bug
have fun