PHP - Utilisation données formulaires

Résolu/Fermé
parisiendu95360 Messages postés 22 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 6 juillet 2009 - 14 août 2008 à 14:58
petinouv Messages postés 662 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 20 mai 2009 - 14 août 2008 à 15:59
Bonjour,

Alors voilà j'ai un problème avec un petit script PHP que je suis en train de mettre en place et j'espère que vous allez me trouver la solution !

Alors enfait c'est un petit module de notes avec une moyenne qui est faite automatiquement et un compteur de nombre de notes attribuées.

Je vous en explique rapidement l'arborescence, si on peu appeller ça comme ça :

Il y a deux fichiers texte :
- nombre_total_de_notes.txt qui contient le nombre de notes attribuées. (C'est en gros un compteur de visites qui ajoute +1 à chaque fois qu'un vote est confirmé. C'est la faille du système qui pourrait se corriger par une reconnaissance d'adresse IP...)
- nombre_total_de_points.txt qui contient le nombre de points (exemple : Si il y a 3 votes de 4/10, le nombre de points est de 4+4+4=12. Le contenu du fichier sera uniquement "12" et non pas "4+4+4")

Et deux pages avec du codes :

- Une page html, nommée "index.php" (elle ne contient pas de code PHP, elle pourrait tout aussi bien s'appeller "index.html") C'est dans cette page que se trouve le formulaire, en voici le contenu :

<html>
<head>
<title>
Esaai script de note de page - Page de vote
</title>
</head>
<body>
<center>
<strong>
<font face="calibri" size=4>
Notez cette page !
<br />
<br />
<form method="post" action="script.php">
0<input type="radio" name="note_donnee" value="0"> -
1<input type="radio" name="note_donnee" value="1"> -
2<input type="radio" name="note_donnee" value="2"> -
3<input type="radio" name="note_donnee" value="3"> -
4<input type="radio" name="note_donnee" value="4"> -
5<input type="radio" name="note_donnee" value="5" checked> -
6<input type="radio" name="note_donnee" value="6"> -
7<input type="radio" name="note_donnee" value="7"> -
8<input type="radio" name="note_donnee" value="8"> -
9<input type="radio" name="note_donnee" value="9"> -
10<input type="radio" name="note_donnee" value="10">
<br />
<br />
<input type="submit" value="Envoyer">
</form>
</font>
</strong>
</center>
</body>
</html>

- Et une page script.php là où se trouve le script. En voici le contenu :

<html>
<head>
<title>
Esaai script de note de page - Page de confirmation du vote
</title>
</head>
<body>
<center>
<strong>
<font face="calibri" size=4>
Votre note a bien été prise en compte.
<br />
<br />
<?php
// Récupération des données du formulaire - Création variable

$note_donnee = $_POST['note_donnee'];

// Ajout d'un vote - Ecriture dans "nombre_total_de_notes.txt"

$ajout_note = fopen ("nombre_total_de_notes.txt", "r+");
$nb_notes = fgets ($ajout_note, 11);
$nb_notes = $nb_notes + 1;
fseek ($ajout_note, 0);
fputs ($ajout_note, $nb_notes);
fclose ($ajout_note);

// Ajout des points - Ecriture dans "nombre_total_de_points.txt"

$ajout_points = fopen ("nombre_total_de_points.txt", "r+");
$nb_points = fgets ($ajout_points, 1);
$nb_points = $nb_notes + $note_donnee;
fseek ($ajout_points, 0);
fputs ($ajout_points, $nb_points);
fclose ($ajout_points);

// Calcul de la moyenne - $nb_points divisé par $nb_notes

$moyenne_accueil = $nb_points / $nb_notes;

// affichage des messages - Nombre total de notes et moyenne

echo 'Moyenne : '.$moyenne_accueil.'/10. <br/>';
echo 'Nombre total de votants : '.$nb_notes.'.';
?>
</font>
</strong>
</center>
</body>
</html>

Les votes se déroulent bien, pas de fonctions mal notées, pas de variables mal déclarées.
C'est que la moyenne est fausse !
Déjà, pour le premier vote, il m'ajoute +1 a chaque fois ! Si je vote 10, il me dit que la moyenne est de 11/10...
Le nombre de votants semble correct ! JE supposerai donc que le souci vien du calcul de la moyenne !

Pourriez-vous m'aider s'il vous plait !

Merci !!

----

http://parisiendu95360.free.fr
A voir également:

5 réponses

absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
14 août 2008 à 15:10
Slt,

le script est correct y a juste une faute d'attention


quand tu ajoute les points tu fai ceci :

// Ajout des points - Ecriture dans "nombre_total_de_points.txt"

$ajout_points = fopen ("nombre_total_de_points.txt", "r+");
$nb_points = fgets ($ajout_points, 1);

$nb_points = $nb_notes + $note_donnee; --> le probleme est la ^^

$nb_points = $nb_points + $note_donnee;
0
parisiendu95360 Messages postés 22 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 6 juillet 2009 11
14 août 2008 à 15:13
Salut !!

Ahhh ouiii !!!

Mercii beaucoup !!

C'est sympa ! C'est dur a trouver ce genre de script sur le net ... un simple script de notes...

Merci beaucoup !
0
absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
14 août 2008 à 15:14
Re,

si ça t'interesse j'ai fai un script de ce genre sauf que c'est avec des etoiles la notation et ça utilise une base de données mais tout est géré en ajax...
0
petinouv Messages postés 662 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 20 mai 2009 82
14 août 2008 à 15:17
Salut,

Personnellement ton système de notation par étoile m'intéresse... pourrais-tu me le montrer stp ?

Merci d'avance ;)
0
absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50
14 août 2008 à 15:19
Je fai un fichier readme et je te donne ça ^^
0
petinouv Messages postés 662 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 20 mai 2009 82
14 août 2008 à 15:30
Je fai un fichier readme et je te donne ça ^^

Merci beaucoup ;)
0
absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008 50 > petinouv Messages postés 662 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 20 mai 2009
14 août 2008 à 15:54
faudra patienter jusqu'a ce soir je peu rien transferer ^^

sinon faut aller la :

http://www.masugadesign.com/the-lab/scripts/unobtrusive-ajax-star-rating-bar/
0
petinouv Messages postés 662 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 20 mai 2009 82 > absurdsystem Messages postés 117 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 28 août 2008
14 août 2008 à 15:59
Merci ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
parisiendu95360 Messages postés 22 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 6 juillet 2009 11
14 août 2008 à 15:21
Re !


Moi aussi je veux bien ton petit script pour la notation par etoiles !

Je te passe mon email en MP !

Mercii encore.

----

http://parisiendu95360.free.fr
0