Avatar billede s0mmer Nybegynder
12. november 2003 - 12:45 Der er 8 kommentarer

Skrivefejl selvom chmod 777

Hej

Jeg har dette lille smarte stykke kode på et webhotel:
<?


    $ip = getenv("REMOTE_ADDR");
    $fil = "count.txt";
    $f = file($fil);
    $antal = count($f);
    $yest = time() - 1800;
    $o = "0";
    $xidag = "f";
    $idag = time();
    $idag2 = date("Y F d, H:i");
        while ($antal > $o) {
            $streg = explode(" ", $f[$o]);
                if ($ip == $streg[0]) {
                $x = "t";
                    if ($streg[1] > $yest) {
                        $xidag = "t";
                    }
                }
            $o++;
        }
        if ($xidag == "f") {
            $logg = fopen("$fil", "a");
            fputs ($logg, "$ip $idag, $idag2\n");
           
            fclose ($logg);
        }
    $f = file($fil);
    $antal = count($f);
        if ($x == "t") {

            print "$antal";
        }
        else {
            print "$antal";
        }


?>

Og jeg smækker .txt filen op på en windows server hvor der er chmodded 777 i forvejen, men den giver fejl alligevel. altså at den ik ka skrive.
Forstår ik hvorfor. Og nej jeg har ik chmod rettigheder.

Hjælp mig..
Avatar billede well_r Nybegynder
12. november 2003 - 12:47 #1
200 er rimeligt mange point
hmm
skriv lige den præcise fejl?
altså den fjel du får
Avatar billede s0mmer Nybegynder
12. november 2003 - 12:51 #2
her:
Warning: fopen(count.txt) [function.fopen]: failed to create stream: Permission denied in "MIN URL PÅ PHP DOK" on line 35

Warning: fputs(): supplied argument is not a valid stream resource in "MIN URL PÅ PHP DOK" on line 36

Warning: fclose(): supplied argument is not a valid stream resource in "MIN URL PÅ PHP DOK" on line 38

Notice: Undefined variable: x in "MIN URL PÅ PHP DOK" on line 42
0


"MIN URL PÅ PHP DOK" = Url'en på hvor count.php ligger som er min kode^^ vist ovenover
Avatar billede s0mmer Nybegynder
12. november 2003 - 13:04 #3
som er min kode = som er i min kode
Avatar billede sukos Juniormester
12. november 2003 - 13:23 #4
Hvad med
$f = file($_SERVER["DOCUMENT_ROOT"] ."/". $fil);
hvis eller count.txt ligger i roden af dit domain.
Hvis filen ikke ligger indenfor http, så prøv at skrive den fulde sti.
$f = file("/var/www/domain/filer/". $fil);
Avatar billede s0mmer Nybegynder
12. november 2003 - 13:26 #5
ingen effekt
Avatar billede s0mmer Nybegynder
12. november 2003 - 13:50 #6
forstår det ikke.. når det er 777 chmoddet burde det virke efter min mening. ka i finde en løsning ?
Avatar billede koden12 Nybegynder
12. november 2003 - 15:39 #7
Skal der overhoved CHMod på en windows, det er kun hvis det er en Linux server..
VH
koden12
Avatar billede martor Nybegynder
17. december 2004 - 01:26 #8
Hvilket webhotel har du? Jeg har været ude for lignende problemer (hos Azero). Så vidt jeg har forstået, så er sagen den at webbrugeren (som er den der kører php'en) ikke har samme rettigheder som dig (kunden). Når du chmod'er ændrer du rettighederne for webbrugere, men ikke for system brugere. Og selvom du sætter den til 0777, så har det desværre ingen effekt, da 0777 er ift. webbrugere og ikke system-brugere.

Løsningen for mig var at benytte en ftp-løsning.

Men inden du kaster dig ud i det, kunne du evt. prøve at lave en umask(0000); inden dit chmod kald. (kom lige i tanke om det).
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