Avatar billede Slettet bruger
15. februar 2004 - 15:00 Der er 8 kommentarer og
1 løsning

Vote system!

http://www.wollsen.com/myweb_ny/poll.php

En masse fejl..

Jeg har gjort filerne til chmod 666

mit script:

<?PHP
function hent_stemme($fil_endelse){
$filnavn = "stem" . $fil_endelse;
$fil_endelse = "txt";
$fil = fopen($filnavn, "r");
return fgets($fil, 1096);
fclose($fil);
}
function stem($fil_endelse){
$antal_stemmer = hent_stemme($fil_endelse) + 1;
$filnavn = "stem" . $fil_endelse;
$fil = fopen($filnavn, "w");
fwrite($fil, $antal_stemmer);
fclose($fil);
}
function tegn_soejle($andal, $samlet){
$stemme_procent = $andel / $samlet * 100;
$stemme_procent = round($stemme_procent);
echo "$stemme_procent %";
echo "<img scr='bar.gif' height=10 width=",$stemme_procent, "border=0>";
}
if ((!$har_stemt) && ($stemme)){
$har_stemt = 1;
setcookie("har_stemt", "1", time() + 1209600);

stem($stemme);
}
?>
<html>
<body>
<table border=0>
<?
$samlet_antal_stemmer = 0;
$tekst[1] = "Meget god";
$tekst[2] = "God";
$tekst[3] = "Middel";
$tekst[4] = "Elendig";
for ( $fil_nr = 1 ; $fil_nr <= 4 ; $fil_nr++){
$stemmer[$fil_nr] = hent_stemme($fil_nr);
$samlet_antal_stemmer = $samlet_antal_stemmer + $stemmer[$fil_nr];
}
if ($har_stemt){
for ( $fil_nr = 1 ; $fil_nr <= 4 ; $fil_nr++){
echo "<tr><td>",$tekst[$fil_nr],"</td>";
echo "<td>";
tegn_soejle($stemmer[$fil_nr], $samlet_antal_stemmer);
echo "</td></tr>";
}
} else {
for ( $fil_nr = 1; $fil_nr <= 4 ; $fil_nr++){
echo "<tr><td>$tekst[$filnr]</td>";
echo "<td><a href=\"$PHP_SELF?stemme=$fil_nr\">";
tegn_soejle($stemmer[$fil_nr], $samlet_antal_stemmer);
echo "</a></td></tr>";
}
}
?>
</table>
</body>
</html>
Avatar billede terrak Nybegynder
15. februar 2004 - 15:13 #1
Har du selv lavet scriptet uden at teste det skridt for skridt? Jeg ville mene at man normalt laver det basiske, og så derefter bygger mere og mere på, netop for at undgå sådanne fejl.

Lige nogle fejl jeg fandt ved hurtigt at kigge det igennem:

function tegn_soejle($andal, $samlet){
- $andal rettes til $andel?

echo "<tr><td>$tekst[$filnr]</td>";
echo "<td><a href=\"$PHP_SELF?stemme=$fil_nr\">";

=

echo "<tr><td>".$tekst[$filnr]."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?stemme=$fil_nr'>";

---

echo "<tr><td>",$tekst[$fil_nr],"</td>";
echo "<td>";

=

echo "<tr><td>".$tekst[$fil_nr]."</td>";
echo "<td>";
Avatar billede Slettet bruger
15. februar 2004 - 15:18 #2
http://www.wollsen.com/myweb_ny/poll.php

Nye fejl

Jeg har en bog kaldet: Start på PHP
Jeg har simpelthen skrevet alt ind og så testet!
Avatar billede terrak Nybegynder
15. februar 2004 - 15:21 #3
Har du skrevet af fra bogen? For så er det da nok en lidt indviklet kode at starte med. Hvis jeg var dig ville jeg enten kigge på de mere simple koder, eller starte forfra på denne, da den er fyldt med fejl.
Avatar billede sukos Juniormester
15. februar 2004 - 15:24 #4
Du får ikke definere stien korrekt til den fil som skal åbnes
Avatar billede Slettet bruger
15. februar 2004 - 15:26 #5
Hmm.

Jeg har fundet et alternativ

Men ellers tak for hjælpen :)
Avatar billede sukos Juniormester
15. februar 2004 - 15:26 #6
$filnavn = "stem" . $fil_endelse;



$filnavn = "stem." . $fil_endelse;


Der plejer at være punktum i et filnavn :O)
Avatar billede terrak Nybegynder
15. februar 2004 - 15:30 #7
Eksempel på et af stederne hvor den er gal med koden:

hent_stemme($fil_nr);
Her fortæller du at den skal køre funktionen hent_stemme, og at den skal smide $fil_nr ind som $fil_endelse. Hvor $fil_nr er 1 til at starte med.
I funktionen hent_stemme får $fil_endelse værdien 1, hvorefter du fortæller den at $filnavn er "Stem" sat sammen med $fil_nr(som var 1). Så nu indeholder $filnavn altså stem1 - i stedet for stem.txt som det nok skulle være?
Avatar billede Slettet bruger
15. februar 2004 - 15:31 #8
http://www.wollsen.com/myweb_ny/form.php

Hvordan får jeg den til at gemme ens ip?
Fordi man kan gå amok i den som nogen allerede har gjort!
Avatar billede Slettet bruger
15. februar 2004 - 15:45 #9
..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester