Gå til innhold

Enkelt poll til skoleprosjekt


Anbefalte innlegg

Hei

 

 

 

 

Jeg er i gang med et skoleprosjekt på IT@HiO hvor vi skal lage en nettside. Men det er en ting som vi sliter med å finne noe bra av: Poll. 

 

Ingen av oss kan javascript, eller veldig mye php, men klarer å integrere på siden vår. 

 

Problemet er at det helst ikke skal være noe reklame med, og helst ikke flash.  Vi har også mulighet for å lagre dataene på filserveren nettsiden skal ligge på såvidt jeg vet, så trenger egentlig ikke noe online poll som lenker til en annen side, men rett og slett scriptet.

 

Det hadde vært kjempefint om noen ville gitt en hjelpende hånd! :-)

 

Jeg har prøvd flere polls uten å være fornøyd, og har også søkt her på forumet (men finner så latterlig mye urelevant og dårlige svar).

 

 

Lenke til kommentar
Videoannonse
Annonse

Haha for en tilfeldighet, satt akkurat opp det greiene der fiberkanin og fikk det delvis til å virke ^_^

 

Men et problem; det går an å vote så mange ganger man vil.. Får vel lese igjennom et par ganger til, men har ikke oppdaget noen cookie el.l.

 

 

Lenke til kommentar

Har kommet over et problem til:

 

Hva om jeg har lyst å legge til et svaralternativ til for å se om det fungerer.

 

Her er hva jeg prøvde; men jeg kan ikke noe php/js så prøver meg egentlig bare litt frem etter å lese hvordan koden fungerer, men tydeligvis er det noe som ikke er riktig. Fordi jeg kan vote, men resultatet vises ikke. Her er koden jeg prøvde:

 

HTML:

 

 

<html>
<head>
<script type="text/javascript">
function getVote(int)
{
if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
xmlhttp.onreadystatechange=function()
 {
 if (xmlhttp.readyState==4 && xmlhttp.status==200)
   {
   document.getElementById("poll").innerHTML=xmlhttp.responseText;
   }
 }
xmlhttp.open("GET","poll_vote.php?vote="+int,true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="poll">
<h3>Do you like PHP and AJAX so far?</h3>
<form>
Yes:
<input type="radio" name="vote" value="0" onclick="getVote(this.value)" />
<br />No:
<input type="radio" name="vote" value="1" onclick="getVote(this.value)" />
<br />Maybe:
<input type="radio" name="vote" value="2" onclick="getVote(this.value)" />
</form>
</div>

</body>
</html>

 

 

PHP:

 

 

<html>
<?php
$vote = $_REQUEST['vote'];

//get content of textfile
$filename = "poll_result.txt";
$content = file($filename);

//put content in array
$array = explode("||", $content[0]);
$yes = $array[0];
$no = $array[1];
$maybe = $array[2];

if ($vote == 0)
 {
 $yes = $yes + 1;
 }
if ($vote == 1)
 {
 $no = $no + 1;
 }
if ($maybe = $ == 2)
 {
 $maybe = $maybe + 1;
 }

//insert votes to txt file
$insertvote = $yes."|".$no"|".$maybe;
$fp = fopen($filename,"w");
fputs($fp,$insertvote);
fclose($fp);
?>

<h2>Result:</h2>
<table>
<tr>
<td>Yes:</td>
<td>
<img src="poll.gif"
width='<?php echo(100*round($yes/($no+$yes+$maybe),3)); ?>'
height='20'>
<?php echo(100*round($yes/($no+$yes+$maybe),3)); ?>%
</td>
</tr>
<tr>
<td>No:</td>
<td>
<img src="poll.gif"
width='<?php echo(100*round($no/($no+$yes+$maybe),3)); ?>'
height='20'>
<?php echo(100*round($no/($no+$yes+$maybe),3)); ?>%
</td>
<td>Maybe:</td>
<td>
<img src="poll.gif"
width='<?php echo(100*round($no/($no+$yes+$maybe),3)); ?>'
height='20'>
<?php echo(100*round($maybe/($no+$yes+$maybe),3)); ?>%
</td>
</tr>
</table>

 

 

Lenke til kommentar

Isteden for å knabbe kode, modifisere det og håpe at det virker, ville jeg heller satt meg ned og prøvd å forstå hva som faktisk skjer og hvordan man kunne laget det selv. Du går vel på skole for å lære? :)

 

Et tips: Dropp AJAX om du ikke er stø på dette fra før av. Det er 100% unødvendig, og kan legges på i etterkant når resten virker som det skal.

 

Åpne txt-filen dere skriver til og se om det faktisk er lagret noe der. Og lag en funksjon isteden for echo(100*round($maybe/($no+$yes+$maybe),3)) overalt.

Lenke til kommentar

Hehe ja det er vel det beste Matsemann, men tingen er at dette var ikke et prosjekt som gikk ut på å egentlig ta i bruk JS/PHP, men var bare noe vi ville ha med som en ekstragreie på nettsiden, så hadde ikke tid eller interesse av å bruke tiden på å lære oss f.eks PHPen som krevdes for pollet som ble linket litt lengre opp, da ingen av oss kunne noe fra før.  

Lenke til kommentar

Kan igrunn ingenting php\js selv.

 

Men tror problemet i koden din ligger her:

 $insertvote = $yes."|".$no"|".$maybe;

 

Bytt til

$insertvote = $yes."||".$no."||".$maybe;

 

Små må du kanskje bytte ut den første $no (på den nederste) til $maybe slik at du viser den "grafikk-baren" fra $maybe og ikke $no

width='<?php echo(100*round($no/($no+$yes+$maybe),3)); ?>'

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...