script diagramme graphique, je galère

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : script diagramme graphique, je galère

par mere-teresa » 25 juil. 2005, 11:49

salut je viens de regarder ton code et je ne comprend pas pourquoi tu fais deux requetes (partie 1 de ton code), un select * est suffisant et apres avec php du traite tes 2 cas

Select * c'est mal !

par VaN » 25 juil. 2005, 10:17

je procede comme cela car la base est mal foutue, il a deux type de données diferentes dans ma table sondages, les questions des sondages (Q) et les reponses, plus nombreuses :

sdg_key sdg_id sdg_tit sdg_type sdg_debut sdg_duree sdg_txt sdg_resultat
24 3 R 0 0 Mauvais 2
26 4 R 0 0 Un casque sans micro 1
25 4 Casque audio Q 1098396000 1296000 Quel type de casque audio utilisez-vous ? 3
18 3 sondagee test 2 Q 1095112800 2592000 Que pensez-vous de ce site ? 8
19 3 R 0 0 Excellent 4
20 3 R 0 0 Bon 2
21 3 R 0 0 Moyen 0
27 4 R 0 0 Un casque micro Plantronics 0
28 4 R 0 0 Un casque micro Sennheiser 1
29 4 R 0 0 Je joue sans casque 1
36 5 R 0 0 Jamais 123
37 5 R 0 0 Moins d'1h/jour 283
35 5 Télévision Q 1104793200 1382400 Combien de temps regardez-vous la télévison chaque... 698
38 5 R 0 0 De 1h à 3h/jour 236
39 5 R 0 0 De 3h à 5h/jour 25
40 5 R 0 0 Plus de 5h/jour 31

et le nombres de fois ou dois se répéter mon graph est celui du nombre de questions, donc il faut bien que cette requete soit à part.

par jeff » 23 juil. 2005, 16:39

salut je viens de regarder ton code et je ne comprend pas pourquoi tu fais deux requetes (partie 1 de ton code), un select * est suffisant et apres avec php du traite tes 2 cas

quelle est ton code pour le premier graphe

par VaN » 22 juil. 2005, 14:56

Suis-je condamné à mettre ce script à la poubelle et afficher mes sondages en brut ? : /

par VaN » 22 juil. 2005, 11:24

oui, j'avais déjà essayer et le résultat n'etait pas concluant. je viens de faire un test :

resultat : il m'affiche N*N fois le nombre d'entrées dans la table, et toujours avec les meme données, celle de la derniere ligne.

par jeff » 21 juil. 2005, 18:18

est ce que t'a essayer d'inclure graph.php dans ta premiere boucle

Code : Tout sélectionner

elseif (isset($_GET['show']) && $_GET['show']=='all') { $sql_all_id = "SELECT DISTINCT sdg_id FROM sondages"; $query_all_id = mysql_query($sql_all_id); while ($result_all_id = mysql_fetch_array($query_all_id)) { $id = $result_all_id['sdg_id']; //echo $id; $sql_all_R = "SELECT * FROM sondages WHERE sdg_type='R'"; $query_all_R = mysql_query($sql_all_R); $rows_all_R = mysql_num_rows($query_all_R); $sql_all_Q = "SELECT * FROM sondages WHERE sdg_type='Q'"; $query_all_Q = mysql_query($sql_all_Q); $rows_all_Q = mysql_num_rows($query_all_Q); //echo "rows : ".$rows_all_Q; include ("GRAPH.php"); } echo "<br /><br />"; }

par VaN » 21 juil. 2005, 17:07

^^

script diagramme graphique, je galère

par VaN » 21 juil. 2005, 12:05

Bonjour a toute la communauté ajd,

bon, j'utilise un script trouvé sur le net pour réalisé un diagramme graphique (en baton), à partir de données extraites d'une bdd.

mais hélas j'ai encore beaucoup d'erreurs que je n'arrive pas à corriger avant d'atteindre le résultat souhaité.

l'adresse de test : http://vanwork.nuxit.net/goodgame/extra ... .php?cat=4

####################################"

la structure de la bdd sondages :

Champ Type Attributs Null Défaut Extra Action
sdg_key smallint(5) UNSIGNED Non auto_increment
sdg_id smallint(5) UNSIGNED Oui NULL
sdg_tit tinytext Oui NULL
sdg_type set('Q', 'R') Oui NULL
sdg_debut int(11) Oui NULL
sdg_duree int(11) Oui NULL
sdg_txt varchar(255) Oui NULL
sdg_resultat int(5) Oui NULL

son contenu :

sdg_key sdg_id sdg_tit sdg_type sdg_debut sdg_duree sdg_txt sdg_resultat
24 3 R 0 0 Mauvais 2
26 4 R 0 0 Un casque sans micro 1
25 4 Casque audio Q 1098396000 1296000 Quel type de casque audio utilisez-vous ? 3
18 3 sondagee test 2 Q 1095112800 2592000 Que pensez-vous de ce site ? 8
19 3 R 0 0 Excellent 4
20 3 R 0 0 Bon 2
21 3 R 0 0 Moyen 0
27 4 R 0 0 Un casque micro Plantronics 0
28 4 R 0 0 Un casque micro Sennheiser 1
29 4 R 0 0 Je joue sans casque 1
36 5 R 0 0 Jamais 123
37 5 R 0 0 Moins d'1h/jour 283
35 5 Télévision Q 1104793200 1382400 Combien de temps regardez-vous la télévison chaque... 698
38 5 R 0 0 De 1h à 3h/jour 236
39 5 R 0 0 De 3h à 5h/jour 25
40 5 R 0 0 Plus de 5h/jour 31
41 6 Plantronics 1 Q 1106694000 1296000 Avez-vous un casque micro ? 758
42 6 R 0 0 Oui, et je compte le remplacer dans les 6 mois qui... 256
43 6 R 0 0 Oui, et je ne compte pas le remplacer dans les 6 m... 374
44 6 R 0 0 Non, ça ne m'intéresse pas 59
45 6 R 0 0 Non, mais je compte en acheter un dans les 6 mois ... 69
46 7 Lecteur MP3 Q 1111186800 1296000 Possédez-vous un lecteur MP3 ? 1015
47 7 R 0 0 Oui, j'ai une clé USB qui lit les MP3. 343
48 7 R 0 0 Oui, j'ai un iPod. 138
49 7 R 0 0 Oui, j'ai un lecteur concurrent de l'iPod (Archos,... 220
50 7 R 0 0 Je n'en ai pas et ça ne m'intéresse pas. 107
51 7 R 0 0 Je n'en ai pas mais je compte en acheter un dans l... 207
52 8 Mesure de la prescription Q 1112824800 1382400 Votre famille et vos amis sollicitent vos conseils... 559
53 8 R 0 0 ... presque jamais 169
54 8 R 0 0 ... de 1 à 3 fois par mois 185

#####################################

les multiples erreurs :

1. lorsque je clique sur le lien 'Afficher tous les sondages', il semblerait que ma boucle est foireuse, car il m'affiche en chaine toujours le meme diagramme, mais le nombre de tour est correct.
<?php
elseif (isset($_GET['show']) && $_GET['show']=='all') 
					{	
					
						$sql_all_id = "SELECT DISTINCT sdg_id FROM sondages";
						$query_all_id = mysql_query($sql_all_id);
						while ($result_all_id = mysql_fetch_array($query_all_id)) 
						{
							$id = $result_all_id['sdg_id'];
							//echo $id;
							$sql_all_R = "SELECT * FROM sondages WHERE sdg_type='R'";
							$query_all_R = mysql_query($sql_all_R);
							$rows_all_R = mysql_num_rows($query_all_R);
						
							$sql_all_Q = "SELECT * FROM sondages WHERE sdg_type='Q'";
							$query_all_Q = mysql_query($sql_all_Q);		
							$rows_all_Q = mysql_num_rows($query_all_Q);				
							
							//echo "rows : ".$rows_all_Q;
							
							
						}
						include ("GRAPH.php");
						
							echo "<br /><br />";


					}
?>
2. lorsque que l'on actualise la page, là ça devient coton, les diagrammes deviennent fous, il n'en genere plus qu'un seul, avec toutes les valeurs de la bdd dedans, je comprends pas pourquoi.

le fichier GRAPH.php
<?php

include_once("class.graphique3dbars.php");
$Graphique = new GraphiqueCommande;

$Graphique->SetBorder		(1, "Noir");
$Graphique->SetGraphPadding	(40, 10, 20, 20);
$Graphique->SetValueShow	(true);

if (isset($_GET['show']) && $_GET['show']=='all')
{	
	$result_all_Q = mysql_fetch_array($query_all_Q);
	$Graphique->SetGraphTitle	($result_all_Q['sdg_tit'], "center", 3);
}
else
{
	$Graphique->SetGraphTitle	($result_Q['sdg_tit'], "center", 3);
}
$Graphique->SetGraphFont	(2, "FontNoir");
$Graphique->SetGraphDeepness(10);
$Graphique->SetGraphYScale	(100);
$Graphique->SetBarsColor	("GG", "Noir");


$i=0;
if (isset($_GET['show']) && $_GET['show']=='all')
{
	 while ($rows_all_Q!=0) 
	 {
	 	echo $rows_all_Q;
		while ($result_all_R = mysql_fetch_array($query_all_R)) 
		{
			$Data[$i] = $result_all_R["sdg_resultat"];
			$Values[$i] = $result_all_R["sdg_txt"];
			$i=$i+1;
		}
			
			$larg = $i * 120;
			$Graphique->SetGraphSize 	(200, $larg);
			$Graphique->SetGraphData	($Values, $Data); 
			$Graphique->DrawGraphArea	("temp");
			echo "<br /><br />";
		
		$rows_all_Q=$rows_all_Q-1;
	}
}

else   
{
	
	
		while ($result_R = mysql_fetch_array($query_R)) 
		{	
			$percent = round((($result_R['sdg_resultat']*100)/$result_Q['sdg_resultat']));
			$Data[$i] = $result_R["sdg_resultat"]." [".$percent."%]";
			$Values[$i] = $result_R["sdg_txt"];
			$i=$i+1;
		
		}
		$larg = $i * 120;
		$Graphique->SetGraphSize (200, $larg);
		$Graphique->SetGraphData	($Values, $Data); 
		$Graphique->DrawGraphArea	("temp");
		

}



?>
Conclusion : je patauge dans la semoule, j'ai besoin d'aide pour m'ouvrir les yeux sur le pourquoi de ces dysfonctionnement. En esperant que quelqu'un aura la motivation et le temps de se plonger un peu dans ce post : /

merci d'avance