IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

script php sondage


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #21
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    la table mysql:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    CREATE TABLE `sondage` (
    `id` SMALLINT NOT NULL AUTO_INCREMENT,
    `question` TEXT NOT NULL ,
    `proposition1` VARCHAR( 100 ) NOT NULL ,
    `proposition2` VARCHAR( 100 ) NOT NULL ,
    `proposition3` VARCHAR( 100 ) NOT NULL ,
    `resultats1` SMALLINT NOT NULL ,
    `resultats2` SMALLINT NOT NULL ,
    `resultats3` SMALLINT NOT NULL ,
    PRIMARY KEY ( `id` )
    ) ENGINE = InnoDB

    un seul champ pour compter le nombre total de resultat1
    puis une deuxieme pour resultat2
    enfin une troisieme resultat3

    comment ferais tu sinon?.

  2. #22
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    Peut-tu ajouter ces lignes de codes et nous afficher son résultat :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo "resultat1 ==> $resultat1<br />";
    echo "resultat2 ==> $resultat2<br />";
    echo "resultat3 ==> $resultat3<br />";
    I don't know what will be used in the next world war, but the 4th will be fought with stones. - Albert Einstein
    Pour détourner un avion, il faut monter dedans - Frédéric beigbeder

  3. #23
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    voici ce que ça m'affiche :
    resultat1 ==> 1
    resultat2 ==> 1
    resultat3 ==> 1

  4. #24
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = "SELECT count(resultats1) as nbre_entrees FROM ".$table;
    Ta requete compte le nombre de lignes dans ta table ou resultats1 est rempli.
    Aucun interet.

    Pour recuperer les resultats d'un sondage ca serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = "SELECT resultats1, resultats2, resultats3 FROM ".$table . " WHERE id =" . $id_du_sondage;
    simplement puisque tu me dis que resultatsx contient deja la somme des votes.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #25
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    tu vois bien ici que les valeurs sont identiques! et pourtant tu affirme le contraire.


    Il faut -je crois- lui macher le travail...

    Code php/MySQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $query = "SELECT resultats1,resultat2,resultat3 FROM ".$table;
    $row = mysql_query($query);
    $data = mysql_fetch_array($row);
    $resultat1 = $data["resultat1"];
    $resultat2 = $data["resultat2"];
    $resultat3 = $data["resultats3"];
    I don't know what will be used in the next world war, but the 4th will be fought with stones. - Albert Einstein
    Pour détourner un avion, il faut monter dedans - Frédéric beigbeder

  6. #26
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    je veux que ça compte pour obtenir le pourcentage par choix
    comment je pourrais faire?

  7. #27
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Désolé de casser votre groove les gars mais j'abrège :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $query = "SELECT resultats1,resultat2,resultat3 FROM ".$table." WHERE id=".$id_sondage;
    $row = mysql_query($query);
    $data = mysql_fetch_array($row);
    $resultat1 = $data["resultat1"];
    $resultat2 = $data["resultat2"];
    $resultat3 = $data["resultat3"];
     
    $total_votes = $resultat1 + $resultat2 + $resultat3;
    $pourcentage_r1 = $resultat1 / $total_votes;
    $pourcentage_r2 = $resultat2 / $total_votes;
    $pourcentage_r3 = $resultat3 / $total_votes;
    Faudra revoir tes bases de mathématiques

  8. #28
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    voila les erreurs:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\sondage\sondage.php on line 35

    Warning: Division by zero in C:\wamp\www\sondage\sondage.php on line 41

    Warning: Division by zero in C:\wamp\www\sondage\sondage.php on line 42

    Warning: Division by zero in C:\wamp\www\sondage\sondage.php on line 43

    help me

  9. #29
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    tout d'abord, merci de votre aide à tous.....malheureusement j'ai encore des soucis et j'aimerais bien vous m'aidez encore.....

    voici la fin du script:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <?php
    // pourcentage des votes en moide graphique et compte
    // On recupere les nombre total de votes resultat1
    $query = "SELECT resultats1,resultats2,resultats3 FROM ".$table." WHERE id="."1";
    $row = mysql_query($query);
    $data = mysql_fetch_array($row);
    $resultat1 = $data["resultats1"];
    $resultat2 = $data["resultats2"];
    $resultat3 = $data["resultats3"];
     
    $total_votes = $resultat1 + $resultat2 + $resultat3;
    $pourcentage_r1 = $resultat1 / $total_votes;
    $pourcentage_r2 = $resultat2 / $total_votes;
    $pourcentage_r3 = $resultat3 / $total_votes;
     
     
    ?>
    <!-- formulaire -->
    <form method="post">
       <?php echo "" . $infos['question'] . ""; ?><br />
    	<?php echo $infos['proposition1']; ?><br />
    		<input type="radio" name="sondage" value="prop1" id="prop1" /><label for="prop1"> <img src='black.jpg'><?php echo round($pourcentage_r1) . "  %"; ?> </label><br />
    	<?php echo $infos['proposition2']; ?><br />
    		<input type="radio" name="sondage" value="prop2" id="prop2" /> <label for="prop2"> <img src='blue.jpg'> <?php echo round($pourcentage_r2) . "  %"; ?></label><br />
    	<?php echo $infos['proposition3']; ?><br />
    		<input type="radio" name="sondage" value="prop3" id="prop3" /> <label for="prop3"> <img src='copper.jpg'><?php echo round($pourcentage_r3) . "  %"; ?></label><br />
    		<input type="submit" value="Voter !"/>
    </form>

    cela affiche 0% pour les trois choix, qu'est qu'il manque?
    le but ce serais obtenir image en pourcentage et le nombre à côté en pourcentage mais COMMENT FAIRE?

    désolé de vous embetez avec mes problemes mais j'aimerais bien de votre aide, en ésperant un jour pouvoir contribuez à mon tour comme vous le faites si bien. pour moi c tres important ce script HELP ME PLEASE.

    encore merci

    je viens de reussir pour le pourcentage en nombre mais j'aimerais bien obtenir aussi avec image, qqn pourrait-il m'aider?

    merci d'avance

    le script:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    <?php
    // pourcentage des votes en moide graphique et compte
    // On recupere les nombre total de votes resultat1
    $query = "SELECT resultats1,resultats2,resultats3 FROM ".$table." WHERE id="."1";
    $row = mysql_query($query);
    $data = mysql_fetch_array($row);
    $resultat1 = $data["resultats1"];
    $resultat2 = $data["resultats2"];
    $resultat3 = $data["resultats3"];
     
    $total_votes = $resultat1 + $resultat2 + $resultat3;
    $pourcentage_r1 = $resultat1 / $total_votes *100;
    $pourcentage_r2 = $resultat2 / $total_votes *100;
    $pourcentage_r3 = $resultat3 / $total_votes *100;
     
    $long_max_bloc = 120; // longueur maximale du curseur pour un vote en pixels
     
    ?>
    <!-- formulaire -->
    <form method="post">
       <?php echo "" . $infos['question'] . ""; ?><br />
    	<?php echo $infos['proposition1']; ?><br />
    		<input type="radio" name="sondage" value="prop1" id="prop1" /><label for="prop1"> <img src='black.jpg'><?php echo round($pourcentage_r1) . "  %"; ?> </label><br />
    	<?php echo $infos['proposition2']; ?><br />
    		<input type="radio" name="sondage" value="prop2" id="prop2" /> <label for="prop2"> <img src='blue.jpg'> <?php echo round($pourcentage_r2) . "  %"; ?></label><br />
    	<?php echo $infos['proposition3']; ?><br />
    		<input type="radio" name="sondage" value="prop3" id="prop3" /> <label for="prop3"> <img src='copper.jpg' ><?php echo round($pourcentage_r3) . "  %"; ?></label><br />
    		<input type="submit" value="Voter !"/>
    </form>

  10. #30
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Il faut vérifier que $total_votes est différent de 0 afin d'effectuer les divisions, j'avais la flegme de mettre un if mais bon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $total_votes = $resultat1 + $resultat2 + $resultat3;
    if($total_votes != 0){
        $pourcentage_r1 = ($resultat1 / $total_votes) * 100;
        $pourcentage_r2 = ($resultat2 / $total_votes) * 100;
        $pourcentage_r3 = ($resultat3 / $total_votes) * 100;
    }
    else{
        $pourcentage_r1 = 0;
        $pourcentage_r2 = 0;
        $pourcentage_r3 = 0;
    }
    Pour le faire avec des images, il te suffirait d'écrire un <div/> ayant une largeur variable et un background.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div style="background-color:#eee;width:<?php echo $pourcentage_r1.'%'; ?>;height:25px;">Pourcentage R1</div>
    Tout est dit !

    Bien cordialement,

  11. #31
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    samspitz! ne vas pas croire que ton code se met automatiquement entre balise CODE

    Cela se fait via le bouton "#"... et c'est nous, pauvres modérateur qui modifions tes messages à chaque fois pour qu'il soit lisible et qu'il incite les utilisateurs à t'aider
    I don't know what will be used in the next world war, but the 4th will be fought with stones. - Albert Einstein
    Pour détourner un avion, il faut monter dedans - Frédéric beigbeder

  12. #32
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    merci de la réponse,
    je l'ai obtenu autrement mais j'aimerais obtenir la meme chose mais en graphique soit image, comment faire?

    merci d'avance

  13. #33
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Utiliser la librarie GD de PHp : http://fr2.php.net/gd

    Mais bon, il faut savoir que la génération d'images à la volée est coûteuse en ressources.

  14. #34
    Membre confirmé Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Points : 547
    Points
    547
    Par défaut
    tu peux déjà regarder du coté des cours qui sont mis à ta disposition sur ce même site

    Représentation graphique de données
    I don't know what will be used in the next world war, but the 4th will be fought with stones. - Albert Einstein
    Pour détourner un avion, il faut monter dedans - Frédéric beigbeder

  15. #35
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    il n'y a pas d'autre methode, comme par exemple declaré le pourcentage de l'image non?

  16. #36
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Et à quoi correspondrait : le pourcentage de l'image ?

    Si tu veux parler du pourcentage de largeur d'image, c'est exactement ce que j'ai fait dans l'exemple que j'ai donné 4 ou 5 messages plus haut.

    Bien sur il faudrait remplacer backgroud-color par background:url() ou background-image mais cela revient au meme.

  17. #37
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Points : 62
    Points
    62
    Par défaut
    merci pour votre aide, j'ai reussi par moi-même content
    désolé de vous avoir pris du temps

    thank you

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [MySQL] Optimisation de scripts PHP/MySQL
    Par DgG dans le forum PHP & Base de données
    Réponses: 368
    Dernier message: 20/11/2013, 18h59
  2. Quel est le meilleur script PHP de portail (CMS) ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 187
    Dernier message: 18/10/2012, 07h45
  3. script de sondage en php
    Par stomerfull dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 07/12/2010, 10h48
  4. Pb d'execution de requete avec un script php
    Par ythierrin dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2003, 14h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo