Afficher sous forme de pourcentage un resultat. [Résolu]

milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 13:56 - Dernière réponse : coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention
- 1 juil. 2007 à 04:13
Bonjour all,

j'aurai une question a vous posez à propos d'un systeme en php que je voudrai programmer pour mon espace membre.
je n'arrive pas a imaginer comment je peux calculer cela et c'est pour ca que j'ai besoin de votre aide.

Vous connaissez par exemple le site www.badoo.Com
les membres apres leur inscription peuvent acceder à leur profil :

il suffit de remplir au maximum les informations de leur profil, de remplir sa description,
de mettre une photo de profil et des photos d’album par exemple,  Plus le pourcentage est
élevé, plus le profil a correctement bien été rempli par le membre.

Comment on peut calculer a partir de simple requete php que tel ou tel profil a été rempli
et que la somme au total du pourcentage puisse arriver à 100 % . je ne sais pas si vous voyez ce que je veux dire.

exemple :

Le fait de creer la barre de loading n'est pas un probleme en soi ! c'est juste comment a partir de plusieurs tables ont peut calculer le pourcentage qui a été rempli ou non. comment faire cela.

J'insiste quand meme que je ne souhaite pas avoir des réponses à la va vite sans explication concrete. je ne suis pas devin, je suis noob et j'essai de comprendre. je le dis parce que j'en connais que quand je pose des questions on me répond comme ci que la réponse était évidente et que c'était archi simple à faire. Je vous assure, elle ne l'ai pas pour moi. j'essai d'apprendre et de comprendre. en tous cas je tiens à remercier les gens qui m'aident ! Merci à vous. Je vous en suis reconnaissant.

( Si vous n'avez pas la réponse merci de s'abstenir. Par contre si vous pouvez m'aider xsil vous plait ! Soyez clair ! je vous en supplie dite pourquoi on appel a cette fonction et pas à celle la. c'est important pour moi ! nous sommes dans un forum... )

Afficher la suite 

11 réponses

Répondre au sujet
vilhjalms 591 Messages postés mercredi 20 juillet 2005Date d'inscription 16 juillet 2009 Dernière intervention - 30 juin 2007 à 14:10
+3
Utile
Saell og blesuð

Une idee :

Dans votre profile vous avez plusieurs champs :

nom
prenom
age
description
photo
[...]

Donc vous verifiez lesquels sont remplis et vous calculez votre pourcentage

Vilhjálms
Sigurðsdóttir aka Frëyjá

PS : evitez de mettre des images juste pour dire merci
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de vilhjalms
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 30 juin 2007 à 18:31
+3
Utile
Salut

... la je t'expliquais ce que c'etait qu'un bool...

je t'ai donne mon code plus haut...

sinon en mysql, t'as :

select (isnull(champ1)+....)/nombrechamp*100 from ....

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de coucou747
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 19:12
+3
Utile
Exemple je fais ca comme ca  ?

 $requete = "SELECT (isnull(nom)+(prenom)+(ville)+(naissance))/4*100 from membres WHERE id='1'";
$result = mysql_query($requete);
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de milkasoprano
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 19:35
+3
Utile
<ol>
<li class="li1">


<?php


</li>
<li class="li1">

 

</li>
<li class="li1">


// ...


</li>
<li class="li1">

 

</li>
<li class="li2">


// Pré Traitement


</li>
<li class="li1">


$Poids = array();

</li>
<li class="li1">


$Poids
[
'champs1'
] = 0.2;

</li>
<li class="li1">


$Poids
[
'champs2'
] = 0.8;

</li>
<li class="li1">

 

</li>
<li class="li2">


// Requete MySQL


</li>
<li class="li1">


$requete = @mysql_fetch_array(mysql_query("SELECT `champs1`,`champs2` FROM `membre` WHERE `id`='".$id."'"));

</li>
<li class="li1">

 

</li>
<li class="li1">


$complet = 0;

</li>
<li class="li1">

 

</li>
<li class="li2">


if
(!empty($requete['champs1']))

</li>
<li class="li1">

        $complet += $Poids['champs1'];

</li>
<li class="li1">

 

</li>
<li class="li1">


if
(!empty($requete['champs2']))

</li>
<li class="li1">

        $complet += $Poids['champs2'];

</li>
<li class="li2">

       

</li>
<li class="li1">


// Post-Traitement


</li>
<li class="li1">


print
"Votre profil est compl&eacute;t&eacute; &agrave; '.number_format($complet*100,0,',',' ').' %";

</li>
<li class="li1">

 

</li>
<li class="li1">


// ...


</li>
<li class="li2">

 

</li>
<li class="li1">


?>


</li>
</ol>
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de milkasoprano
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 1 juil. 2007 à 04:13
+3
Utile
Salut

 $requete = "SELECT (isnull(nom)*10+isnull(prenom)*40+isnull(ville)*40+isnull(naissance)*40)/130*100 AS pourcentage from membres WHERE id='1'";
$result = mysql_query($requete);
$pourcentage=list(mysql_fetch_row($result));
echo $pourcentage;
<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de coucou747
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 14:25
0
Utile
c'est justement le calcul de pourcentage qui m'embete. je fais ca sous forme de condition ? c'est a dire <? si le nom !='' ?> alors on ajoute 10 pourcent ! lmais comment on ajoute ces 10 % ? comment faire les 10 % + celui du prenom de la description etc...
Commenter la réponse de milkasoprano
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 30 juin 2007 à 14:28
0
Utile
Salut

t'as bien des variables booleennes pour te dire quels champs sont remplis

$p=0;
$p+=$bool1+$bool2...;

si t'as $n bools en tout, a la fin tu fais :
$p*=100/$n;
ensuite, tu peux faire du $p=round($p,2); ou autre

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Commenter la réponse de coucou747
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 14:57
0
Utile
ok merci pour vos réponses je vais plus me renseigner sur google au sujet des variables booleennes. merci
Commenter la réponse de milkasoprano
coucou747 12336 Messages postés mardi 10 février 2004Date d'inscription 30 juillet 2012 Dernière intervention - 30 juin 2007 à 16:25
0
Utile
Salut

un bool ca vaut true ou false,
$a=true;
$a=false;
c'est tout...
tu peux faire $a=($i<50);
a vaudra true si i<50, false sinon

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Commenter la réponse de coucou747
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 18:05
0
Utile
50 c'est bien égal au 50 % donc je pourrai personalisé ca alors coucou747 ?
Commenter la réponse de milkasoprano
milkasoprano 239 Messages postés jeudi 21 juillet 2005Date d'inscription 1 juillet 2007 Dernière intervention - 30 juin 2007 à 19:03
0
Utile
je prefere la fonction mysql ;) je prend cette reponse. :)
Commenter la réponse de milkasoprano

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.