PHP || Calcule.
Forum Programmation : PHP || Calcule.
TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique.
Pour obtenir de l'aide, inscrivez-vous gratuitement !
Bonjour, j'aurais besoin d'un peux d'aide pour un petit cacule PHP
Je vous explique :
J'ai créé une table pour des stats par jour : stats_visites_jour
Avec 3 champs : cle(id), jour,nombre.
Enfaite pour le principe de incrémenter la table chaque nouvel page vue pas de problêmes!
Ensuite je fais un while pour afficher le top 5 des pages vues (ORDER BY nombre DESC LIMIT 0.5)
ET la j'ai mes 5 pages les plus vues qui s'affiche.
Maintenant il faut c'est faire un graphique.
De se coté je met simplement dans le while :
<img src=\"stats.jpeg\" height=\"10px\" width=\"".$top_stats3['nombre']."px\">
Et la sa se complique !Car si j'ai une page vue plus de 10 000 sa va me metre une img de 10 000px
et moi je voudrais enfaite (pour le calcul) que le premier soit de 160px, et que enfaite les 4 suivants soiient proportionels ! c'est simple mais pas si facil si on y réfléchi !
Merci de votre futur aide !
Il faut savoir faire une règle de 3 ...
soit v la valeur retournée dans le premier résultat sql (le plus grand des 5)
soit w la valeur retournée dans un des résultats suivants (un des 4 autres, moins grands)
soit x la largeur cherchée
v -> 160
w -> x
x = w * 160 / v
oki mais comment faire une regle de 3?
Et je vois pas comment faire lol mais vraiment pas du tout.
Salut,
tu cherches la plus grande des 5 valeurs(Vmax).
tu en déduis un coeff. de mise à l'échelle :
coef=160/VMax
et tu appliques ton coef à chaque valeur :
Vwidth=$top_stats3['nombre']*coef
Ainsi Vwidth sera toujours compris entre 0 et 160.
[edit]arg grillé :-D
Tu sais lire ?
Un étudiant qui ne sais pas faire une règle de 3 ...
Oki merci de votre aide ....
je vais essayé j'appelle la valeur la plus grande et je fais le calcul.
JE comprend tjs pas comment faire
lol
c'est le principe qui me pose probleme ! et le calcule .
<img src=\"stats.jpeg\" height=\"10px\" width=\"".$top_stats3['nombre']*160/$top_stats3[0]."px\">
mais sa représente quoi le [0] ?
j'ai fais la supposition que $top_stats3 contenait le résultat de ta requête triée.
Donc sauf erreur de ma part, le premier élément correspond à celui qui est le plus grand.
je me retrouve avec une image de :19920px
Ben c'est que j'ai fait une erreur.
Que mets tu dans $top_stats3?
| Citation :
|
C'est un array (ou tableau)
Code :
|
edit : merci sim07
edit2: Enfaite il faudrais fair :
Code :
|
Maintenant reste à savoir comment avoir le plus grand avec $top_stats3 ??
PS:j'ais mis en % pour faciliter.
je te conseille de faire en pourcentages. Tu prend le nombre total de visite, apres tu récupère le nombre de visites de la page la plus visitée. Tu le divise par le nombre total de visites et tu fais *100.
apres tu recommence pour la deuxieme.
($nb_visites_page/$nb_visites_total)*100
alors effectivement ma supposition était mauvaise ;-)
un truc pas propre :
Code :
|
Mouè mais là ça le fait pour calculer un jour ou tout les jours! moi je veux juste c'est les 5 derniers jours et que le plus haut occupe 100%
edit aprés poste de SIM07 : oki merci
ça marche.
merci à tous...
RE: à tous... enfaite jke vien de me rendre compte que là sa affiche :
le top 5...
Mais que à la base c'est les stats des 5 derniers jours que je veux!
désolé de m'etre trompé
Alors la sa se complique je pense. car il faut que le plus gros score des 5 derniers jours soit de 160 px et les autres soit par rapport a celui la(= équivalent)
Code :
|
c'est tout simple, lors de ton "select ....." (quand tu récupère les visites des jours), tu enlève le "desc" et c'est bon
voilà @+
Oui mais la moi je veux c'est que le plus grand ait 160px
et les autres ait la taille parraport a celui la!
Enfaite j'ai fais comme ça finalement
$nbr * 160 / nbr_plus_grand
et le nombre le plus grand je l'ai eu grâce à un while!
Merci à tous
au passage pense quand même que nbr_plus_grand peut valoir 0. ;-)
non c'est impossible!
Car c'est des pages vues sur tout les site est logiquement pour voir la page des stats y en a aumoin une que tu as vu(celle des stats! )
:-P
Il y a 2564 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
