Kommunauty
Connexion
Inscription

Besoin d' aide pour systeme Thumbup/down(PHP/Xml/Javascript)


Knoporte Messages : 82

Bonjour bonjour,

bien j'éspère que vous allez bien et je vous invite a chercher avec moi pour trouver une magnifique solution à ce problème de bisounours!

Je voudrais réaliser un système de vote Thumbs up/Thumb down (le plus simple possible) de ce genre >>la<<.

Rien de plus simple...évidemment!

Sauf que j'aimerais que les résultats des votes soient sauvegarder dans un fichier type XML d'une manière s'approchant de près ou de loin à la suivante:

<?xml version="1&#46;0" encoding="UTF-8"?>
<results>
<posttitle>(défini par une fonction php lors du premier vote)
             <good>nbr de vote good</good>
             <bad>nbr de vote bad</bad>
        </posttitle>
</results>

Au final l'utilisateur arrive, voit se magnifique système de vote proposant deux choix "good" or "bad" il vote et la s'en suit un processus qui grâce a javascript (ou ajax comme vous voulez) ne recharge pas la page donc l'utilisateur voit juste que son vote a été pris en compte car s'affichent a la place de good/bad des résultats en % s'il vous plait.

Il s'en va sans dire que j'ai fais moultes recherches plus complexes les unes que les autres et que je suis tombé sur >>cette mine de script de poll/vote que si vous choisissez 'free' en haut a la place de 'all' il vous propose une liste de script...gratuit<<

( Les nuls ne cliquez même pas sur le lien: c'est en anglais! ) <- je rigoleee

Voili voilou si vous pouviez m'offrir gentillement vos solutions ( avec des codes a l'appuis utilisant la balise [code] du forum sans quoi vos postes ne seront pas considérés =) ) <- je rigoleee

Merci

Knop.

samedi 2 janvier 2010

SiMax Messages : 7572

Salut salut !

Ce dont tu as besoin c'est window.XMLHttpRequest. C'est une sorte de fonction toute faite qui te permet de charger une page externe en lui transmettant éventuellement des infos en GET. Ensuite, tu peux récupérer le contenu de la page dans une variable javascript et l'afficher sur la page sans recharger.

Petit exemple :

[code]<script type="text/javascript">

function vote(sondage)

{

var xhr_object = null;

if(window&#46;XMLHttpRequest) xhr_object = new XMLHttpRequest();

else

if (window&#46;ActiveXObject) xhr_object = new ActiveXObject("Microsoft&#46;XMLHTTP");

xhr_object&#46;open("GET", "traitement&#46;php?sondage="+sondage, true);

xhr_object&#46;onreadystatechange = function(){

if ( xhr_object&#46;readyState == 4 )

{

document&#46;getElementById("resultat")&#46;innerHTML = xhr_object&#46;responseText;

}

}

xhr_object&#46;send(null);

}

</script>[/code:5]

En fait là tu récupère l'ID du sondage en cours qui est transmis par la variable sondage et qui est directement appelé dans ta page. Genre tu as un bouton pour voter au sondage n°1 :

[code]<input type="button" value="Owi j'aime cet article !" onclick="vote(1)"/>[/code:7]

Quand tu clique sur le bouton, ça lance le script qui balance le numéro du sondage à la page de traitement, la page traite, génère ton XML et ensuite affiche un petit message du genre "Merci d'avoir voté" ou "14 personnes ont aussi aimé cet article" qui va ensuite être récupéré par "xhr_object.responseText" et qui sera affiché dans un div d'id "resultat".

Je te laisse regarder ça de plus près, bien entendu tu peux largement modifier le script de base, là c'est vraiment la version la plus simple. Et n'hésite pas à poser des questions !

lundi 4 janvier 2010

Dawlin Messages : 3381

Très bonne idée, très sympa en tout cas comme script, je m'en souviendrai merci Knoportounet !

mardi 5 janvier 2010

Knoporte Messages : 82

Merci beaucoup SiMax je regarde ça tout de suite

samedi 9 janvier 2010

Répondre Pour répondre, tu dois d'abord t'inscrire rapidement sur Kommunauty. Rejoins-nous vite !