begin process at 2012 05 28 12:41:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

AIDE pour un SONDAGE en PHP et javascript !!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

AIDE pour un SONDAGE en PHP et javascript !!

mercredi 25 mars 2009 à 14:18:45 | AIDE pour un SONDAGE en PHP et javascript !!

yoh42

Bonjour je vais me"jeter par la fenêtre" car cela fait deux trois jours que je cherche une solution à mon problème et même après diverses pistes je n'ai pas encore trouver la solution donc je m'adresse a vous.
Mon problème est que je dois cliquer deux fois pour voir apparaitre mes resultats.
Apparemment mon script serait pas eronné donc je compte sur vous pour m'aider à résoudre tous les prblèmes!
Voici mon code :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<body>

<link rel="stylesheet" href="questionnaire.css" type="text/css">
<div align="center">
<table border="1" width="30%">
<tr>
<td>
<?php
ini_set ('display_errors', 'on');
error_reporting(E_ALL);
include ("config.php");
$ip = $_ENV["USERNAME"]; // récupere l'ip de visiteur.
$unix = time(); // temps actuel.
$temps = time()-3600; // le temps y'as maintenant une heure.

$sql="SELECT * FROM `sondages` WHERE `categorie`='question' AND `online`='1'";
$result=mysql_query($sql) or die (mysql_error());
while ($donnees=mysql_fetch_assoc($result)){
    $id=$donnees['id'];
    $libel=$donnees['libelle'];       
}
$sql1 = 'SELECT count(*) FROM `sondages` WHERE `categorie`="reponse" AND `id`='.$id.'';
$result1=mysql_query($sql1);
while ($donnees=mysql_fetch_assoc($result1)){
    $preado=$donnees['count (*)'];   
}
// Verification que l'utilisateur a voté ou non
$verifier = "SELECT `ip` FROM `vote` WHERE ip='$ip'";
$voter = mysql_query($verifier);

//pour l'affichage on utilise une petite fonction  :
  function VerifText($text,$valeur,$reponse,$totaldesreponse){
    $resultat = $reponse*2; 
      if ($text < '1'){ // on teste si le total des votes est moins qu'un, alors, on affiche l'image de la barre avec comme valeur de Width, et on met "0" comme valeur du vote
        $text1 = '<div><strong>  '.$valeur.' : </strong>'.$reponse.'%</div><p class="progressBar"><span><em style="left:'.$resultat.'px">'.$reponse.'%</em></span></p>';
      }
      if ($text == '1'){ // on teste si le total des votes est égal a 1, alors, on affiche l'image de la barre avec comme valeur de Width, "la variable du pourcentage", et on met la "valeur du vote".
        $text1 = '<div><strong>  '.$valeur.' : </strong>'.$reponse.'%</div><p class="progressBar"><span><em style="left:'.$resultat.'px">'.$reponse.'%</em></span></p>';
      }
      if ($text > '1'){  // on teste si le total des votes est plus grand que 1, alors, on affiche l'image de la barre avec comme valeur de Width, "la variable du pourcentage", et on met la "valeur du vote" avec une "s" a la fin cette fois. c tt
        $text1 = '<div><strong>  '.$valeur.' : </strong>'.$reponse.'%</div><p class="progressBar"><span><em style="left:'.$resultat.'px">'.$reponse.'%</em></span></p>';
      }
    return $text1;
  }
 
if(@mysql_num_rows($voter)!='0'){//Si oui, ca veut dire que notre visiteur a déja voté, on lui affiche alors un message de remerciments, et les résultats.
  echo $libel;
  $sql2 = "SELECT `reponse` FROM `vote` WHERE question='".$id."'"; //on récupere le résultat des anciens votes.
  $result2 = mysql_query($sql2);
  $reponse=array();
 
  while($resultat = mysql_fetch_array($result2)) {
    $cadre[] = $resultat['reponse'];  //on récupere le résultat de notre requête, et on le stocke dans un tableau.
  }
 
  //on stocke le total du vote dans une variable "$totalvote" via la méthode "count" qui parcourt tout notre tableau.
  $totalvote= count($cadre);
 
  //on stocke le nombre de chaque choix dans un tableau avec la méthode "array_count_values" .. qui retourne par exmple.
  //$array = array(1, "tyty", 1, "slt", "tyty");   array_count_values($array);    retourne array(1=>2, "tyty"=>2, "slt"=>1)
  $totalreponse = array_count_values($cadre);
   
  //Maintenant on calcule le pourcentage de nos votes selon la régle universel pour ca ^^  "p = chifre x 100 / total".
  //pour ca on utilise "bcdiv" qui divise et renvoie le résultat sous forme de chaîne de caractères.(en plus qu'on peut la fixé comme içi à 1 chiffres après la virgule). sinon on aura parfois des pourcentage genre 65.2323232323% et c'est pas beau >_<
     
//la on affiche notre function avec ces nouveaux paramètres.
  //VerifText($_variable_du_total_du_vote , 'Valeur a affiché dans notre page' , $_variable_de_notre_pourcentage , $_variable_du_total_du_vote);
 
$sql1 = 'SELECT `libelle` FROM `sondages` WHERE `categorie`="reponse" AND `id`='.$id.'';
$result1=mysql_query($sql1);
$k=1;
while ($donnees=mysql_fetch_assoc($result1)){
    $val=$donnees['libelle'];
   
  $reponse[$k] = bcdiv($totalreponse[$k]*100, $totalvote, 1);
  echo VerifText($totalreponse[$k],$val,$reponse[$k],$totalreponse[$k]);
$k++;
}

  echo '<strong> Total votes : </strong>'.$totalvote.'<br /><br /><br />';
  //on répète notre function n fois nos choix avec une "." Pour la concaténation  , et une autre echo pour le total des votes.


}else{ //Si non, ça veut dire que notre visiteur n'as pas encore voté, on lui affiche le formulaire avec les choix.
    $sql="SELECT * FROM `sondages` WHERE `categorie`='question' AND `online`='1'";
    $result=mysql_query($sql) or die (mysql_error());
        while ($donnees=mysql_fetch_assoc($result)){
        echo $donnees['libelle']."<br /><br />";
        $id=$donnees['id'];
        $question=$donnees['libelle'];
    }
    echo '<form method="POST" >';
    $sql1="SELECT * FROM `sondages` WHERE `categorie`='reponse' AND `id`='".$id."'";
    $result1=mysql_query($sql1);
    $i=1;
    while ($donnees1=mysql_fetch_assoc($result1)){
        echo '<input class="zonetext" type="radio" value="'.$i.'" name="choix" />';
        echo $donnees1['libelle']."<br />";
        $i++;
    }

    echo '<input class="zonetext" type="submit" value=" Voter" /></div></form>';     
 }  
if ($_POST[choix]!=0){
    $enregistrer = "INSERT vote SET question='$id', id='', reponse='$_POST[choix]', ip='$ip', unix='$unix'";
    mysql_query ($enregistrer);
}
?>
</td>
</tr>
</table>
</div>
</body>
</html>

Merci d'avance a tous!
mercredi 25 mars 2009 à 20:46:04 | Re : AIDE pour un SONDAGE en PHP et javascript !!

kohntark

Membre Club
Salut Yoh,

Plutôt que de reposter 2 fois la même chose tu devrais prendre en compte les remarques et éventuelles solutions qui te sont données. Comment veux tu résoudre tes problèmes si tu ne tiens pas compte des remarques des personnes qui tentent de t'aider ?

Ca n'encourage pas vraiment à régler ton problème


Bonne soirée,

Kohntark -

mercredi 25 mars 2009 à 22:29:29 | Re : AIDE pour un SONDAGE en PHP et javascript !!

yoh42

Slt, justement j'ai pris en considération certaine remarque mais d'autres que je n'arrive pas a comprendre surtout avec ce qu'il faut mettre avant le while mais quel while ?
Merci quand meme


Cette discussion est classée dans : donnees, mysql, valeur, id, reponse


Répondre à ce message

Sujets en rapport avec ce message

Aide sur un sondage en PHP [ par yoh42 ] Bonjour a tous. Je dois faire un sondage avec un seule question et un affichage graphique pour les résultats.Mon probleme est que je dois cliquer 2 fo Remplir une ligne de BDD en fonction des éléments déjà dans la BDD [ par Dioul2 ] Bonjour,Je débute en PHP et aimerais faire le code suivant:J'ai dans ma BDD des timestamps. Je souhaiterai que mon script inscrive certains commentair unexpected { [ par biloutte33 ] Bonjour tout le monde voici mon code : $reponse = mysql_query('SELECT * FROM `ibf_topics` Where Forum_id=49 OR Forum_id=50 ORDER BY start_date DES mysql_insert_id [ par algantilla ] bonsoir à tous! en fait j'aimerai bien savoir comment afficher la valeur retournée par mysql_insert_id dans une zone de texte?? encore une petite ques enregistrer valeur tableau html dans table mysql [ par clem76630 ] Bonjour, Cela fait longtemps que je m'aide de ce forum lors du développement de mes petits sites ou applications personnel. Mais la je tombe sur os, supprimer une ligne dans BDD [ par pleboys ] Bonjour, voila je me décide enfin à poster après 4 jours de recherches infructueuses sur le net. Etant un grand débutant dans le php/mysql, je n'arri erreur 403- envoi d'un formulaire via $_post [ par Midn ] Bonjour à tous, tout d'abord merci de prendre le temps de lire mon appel au secours, et peut être d'y répondre. Alors pour les infos: Hébergeur: live email de confirmation [ par cladx ] bonjour je voudrai faire une page qui verifie les donner de l'url afin de verifier l'email de cofirmation mais  la page bug toujour  elle me repond to récupérer une valeur [ID] extraite de la bdd pour obtenir les infos [ par dieusurterre ] Je n'arrive pas à trouver comment faire pour que ma page ../fiche.php?ID=[valeur bdd] affiche les renseignement du rows de la bdd relatif à cet ID Liste et checkbox qui recupère les valeur d'une base de donnée [ par zakichane ] bonjour je veux remplire un formulaire a partir d'une base de donnée alors je comence par mon premier probleme j'ai tous declaré et j'ai recupéré les


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,293 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales