01-06-2008, 13:52 PM
Suite au poste de Troll, je vous demande votre avis sur mon script de sondage.
http://familyk29.free.fr/script_sondage
Ne vous en faite pas pour le design, c'est mon prof de techno qui m'a demandé ce script, on l'adaptera ensuite avec son site.
Comment l'ameliorer techniquement parlant?
Sans oublier (l'incredimentation n'est pas mon truc, faudrait que notepad intègre cette fonction ) :
index.php
http://familyk29.free.fr/script_sondage
Ne vous en faite pas pour le design, c'est mon prof de techno qui m'a demandé ce script, on l'adaptera ensuite avec son site.
Comment l'ameliorer techniquement parlant?
Sans oublier (l'incredimentation n'est pas mon truc, faudrait que notepad intègre cette fonction ) :
index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Sondage</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
include("choix.php");
echo $titre; //Affichage du titre
?>
<br/><br/>
<!-- Affichage du sondage-->
<form method="post" action="form.php" enctype="multipart/form-data" name="choix" id="choix">
<select name="choix" id="choix">
<!-- Choix à définir dans choix.php -->
<!-- Ne pas toucher au formulaire, sauf pour rajouter une ligne de choix dans le même exemple-->
<option value=""></option>
<option value="<?php echo "$choix1"?>"><?php echo "$choix1"?></option>
<option value="<?php echo "$choix2"?>"><?php echo "$choix2"?></option>
<option value="<?php echo "$choix3"?>"><?php echo "$choix3"?></option>
</select>
<p><input type="submit" value="Voter!" /></p>
</form>
</body>
</html>
form.php
<?php
include("infoscnx.php");
$retour = mysql_query('SELECT COUNT(*) AS nbre_entrees FROM controle_ip WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\'');
$donnees = mysql_fetch_array($retour);
if ($donnees['nbre_entrees'] == 0) // L'ip ne se trouve pas dans la table, on permet le vote, et on ajoute l'ip dans la table
{
if (empty($_POST['choix']))
{
echo 'Vous n\'avez pas sélectionné de choix. Cliquez <a href="javascript:window.history.go(-1)">ici</a> pour revenir a la page précédente';
}
else
{
include("choix.php");
include("infoscnx.php");
mysql_query('INSERT INTO controle_ip VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\')');
if ($_POST['choix'] == "$choix1")
{
mysql_query("INSERT INTO nomdelatable VALUES ('".$_POST['choix']."', '', '', '', '', '', '', '', '')");
}
elseif ($_POST['choix'] == "$choix2")
{
mysql_query("INSERT INTO nomdelatable VALUES ('', '".$_POST['choix']."', '', '', '', '', '', '', '')");
}
elseif ($_POST['choix'] == "$choix3")
{
mysql_query("INSERT INTO nomdelatable VALUES ('', '', '".$_POST['choix']."', '', '', '', '', '', '')");
mysql_close();
}
echo 'Votre vote a bien été enregistré! Cliquez <a href="lire.php">ici</a> pour voir les résultats!';
}
}
else // L'ip se trouve déjà dans la table, on interdit le vote
{
echo 'Vous avez déjà voté. Cliquez <a href="javascript:window.history.go(-1)">ici</a> pour revenir a la page précédente';
}
?>
lire.php
<?php
include("choix.php");
include("infoscnx.php");
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE choix1='$choix1'");
$donnees = mysql_fetch_array($retour);
?>
<hr><br/>
Nombre de réponses pour <?php echo "$choix1"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE choix2='$choix2'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$choix2"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE choix3='$choix3'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$choix3"?>: <?php echo $donnees['reponse'];
mysql_close();
?>
<br/><br/>
<hr>
<br/>
<?php
if ("$titre_archive1" == Aucun)
{
}
else
{
?><u>Archives:</u> <br/><br/>
<?php echo '- <i>'.$titre_archive1.'</i>'; ?><br/>
<br/>
<?php
include("choix.php");
include("infoscnx.php");
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix1='$archive1'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive1"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix2='$archive2'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive2"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix3='$archive3'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive3"?>: <?php echo $donnees['reponse'];
mysql_close();
}
if ("$titre_archive2" == Aucun)
{
}
else
{
?><br/><br/>
<?php echo '- <i>'.$titre_archive2.'</i>'; ?><br/>
<br/>
<?php
include("choix.php");
include("infoscnx.php");
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix_2_1='$archive_2_1'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive_2_1"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix_2_2='$archive_2_2'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive_2_2"?>: <?php echo $donnees['reponse'];?>
<br/><br/>
<?php
$retour = mysql_query("SELECT COUNT(*) AS reponse FROM nomdelatable WHERE archive_choix_2_3='$archive_2_3'");
$donnees = mysql_fetch_array($retour);
?>
Nombre de réponses pour <?php echo "$archive_2_3"?>: <?php echo $donnees['reponse'];
mysql_close();
}
?>
choix.php
<?php
$titre = "Selection du titre"; //Titre du sondage
$choix1 = "Choix1"; //Selection du premier choix
$choix2 = "Choix2"; //Selection du second choix
$choix3 = "Choix3"; //Selection du troisième choix
//Si choix supplémentaires, rajouter une ligne en respectant l'ordre des chiffres, et en pensant a rajouter une ligne aussi dans index.php
////////////////
$titre_archive1 = "Aucun"; //Nom du 1er sondage archivé, mettre "Aucun", si aucun sondage a archiver
$archive1 = "Archive_Choix1"; //Premier choix du 1er sondage archivé
$archive2 = "Archive_Choix2"; //...
$archive3 = "Archive_Choix3"; //...
////////////////
$titre_archive2 = "Aucun"; //Nom du 2nd sondage archivé, mettre "Aucun", si aucun sondage a archiver
$archive_2_1 = "Archive_Choix_2_1"; //Premier choix du 2eme sondage archivé
$archive_2_2 = "Archive_Choix_2_2"; //...
$archive_2_3 = "Archive_Choix_2_3"; //...
?>
@Troll: J'ai suivi ton conseil pour la connexion a la bdd
Qu'en pensez-vous?