Avatar billede mariolink Nybegynder
16. juli 2003 - 11:10 Der er 17 kommentarer og
1 løsning

kan ik få afstemning til at virke

Jeg vil gerne have min afstemning til at virke men! Når jeg stemmer står der noget med at linje 12,13 og 4 er der noget galt med! i kan lige  få kode:
<?
function hent_stemme($fil_endelse) {
    $filnavn = "stem" . $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 . ".txt";
    $fil = fopen($filnavn, "w");
    fwrite($fil, $antal_stemmer);
    fclose($fil);
}

function tegn_soejle($andel, $samlet) {
    $stemme_procent = $andel/$samlet * 100;
    $stemme_procent = round($stemme_procent);
    echo "$stemme_procent %";
    echo "<IMG SRC=\"billed.gif\" HEIGHT=7 WIDTH=$stemme_procent BORDER=0>";
}

if ((!$har_stemt) && ($stemme)) {
    $har_stemt = 1;
    setcookie("har_stemt", "1", time() + 4);
    stem($stemme);
}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Afstemning</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="sifstyles.css" type="text/css">
</head>

<body bgcolor="#ACAD74">
<table border=0 width="300px">
<p>Hvads du om Nfun?</p>
<?
$samlet_antal_stemmer = 1;
$tekst[1] = "<p>Super God</p>";
$tekst[2] = "<p>god</p>";
$tekst[3] = "<p>middel</p>";
$tekst[4] = "<p>Elendig</p>";
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><p>";
        tegn_soejle($stemmer[$fil_nr], $samlet_antal_stemmer);
        echo "</p></td></tr>";
    }
} else {
    for ( $fil_nr = 1 ; $fil_nr <= 4 ; $fil_nr++) {
        echo "<tr><td><a href=\"$php_self?stemme=$fil_nr\">$tekst[$fil_nr]</a></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>
Jeg kan ik se hvad der er galt men der er noget galt!
og så vil jeg gerna have tiden på at stemme ned på 1 time!
Avatar billede raz0 Nybegynder
16. juli 2003 - 11:34 #1
Problemet ligger højst sandsynligt i at filen ikke kan oprettes pga. manglende skrive rettigheder. Hvis serveren er *nix kan du chmod'e mappen hvor filen skulle blive oprettet i (højst sandsynligt den samme mappe som scriptet ligger i) til 777. Det kan gøres med et FTP program.

For at sætte stemme tiden op til en time, skal du ændre linjen ...
setcookie("har_stemt", "1", time() + 4);
... til ...
setcookie("har_stemt", "1", time() + 3600);

3600 fremkommer ved at gange 60 sekunder med 60 minutter.
Avatar billede mariolink Nybegynder
16. juli 2003 - 12:35 #2
Jeg vil have det til at virke så kom med noget bedre:P
Avatar billede raz0 Nybegynder
16. juli 2003 - 12:56 #3
Ehh okay, ville hjælpe meget hvis du kom med fejl meddelelserne...
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:03 #4
du kan gå ind og se hvad der er galt: http://nfun.1go.dk/preve.php
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:18 #5
Er 'No such file or directory' ikke indlysende? :/
Filerne stem1.txt, stem2.txt, stem3.txt og stem4.txt findes ikke og skal oprettes.
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:23 #6
Har oprettet dem for....
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:41 #7
Så må du have oprettet dem i den forkerte mappe.
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:43 #8
Ligger de i samme mappe som scriptet?
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:46 #9
ja jeg har ændret lidt prøv at gå ind og stem nu men den kan ik gemme(jeg har puttet nogle tal ind i filer for at se om det virkede!)
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:46 #10
Den kan ik gemme på filerne
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:48 #11
Ja, og så er det du skal gøre som jeg sagde, og chmod'e filerne.
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:49 #12
chmod'e filer hvad fan*** er det
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:52 #13
Åben dit FTP program. Der er sikkert noget der hedder CHMOD eller "Change file attributes". Du skal bare sætte filerne til 777, altså alle rettigheder til alle.
Avatar billede raz0 Nybegynder
16. juli 2003 - 13:54 #14
666 burde også være nok.
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:55 #15
TAK TAK TAK TAK TAK
Avatar billede TRoXa Novice
16. juli 2003 - 13:57 #16
lol en hidsigprop :P
Avatar billede mariolink Nybegynder
16. juli 2003 - 13:58 #17
Skal jeg dig pointene nej vel:P okay da:D
Avatar billede raz0 Nybegynder
16. juli 2003 - 14:00 #18
var så lidt :P
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