Avatar billede jarret Nybegynder
30. maj 2004 - 12:31 Der er 26 kommentarer og
1 løsning

Min counter virker ikke?

Den giver fejl meldingen:
Warning: fopen(acc.txt): failed to open stream: Permission denied in /web/www.foodscience.dk/www/Count/counter.php on line 41

Warning: fputs(): supplied argument is not a valid stream resource in /web/www.foodscience.dk/www/Count/counter.php on line 47

You are the 101 Visitor to This site
Warning: fclose(): supplied argument is not a valid stream resource in /web/www.foodscience.dk/www/Count/counter.php on line 52

Hvis jeg prøver den på en anden server virker den fint!!

Jeg tror måske det er fordi jeg bruger det forkerte tal for rettigheder:

$count=fgets($fp,777);

Er der nogen der har et bud på hvad jeg skal gøre
Avatar billede sukos Juniormester
30. maj 2004 - 12:36 #1
Nok mere fordi du ikke får defineret stien til filen korrekt.
Når du har med filer og mapper at gøre, så brug altid den fulde sti:

$sti = $_SERVER["DOCUMENT_ROOT"] ."/acc.txt";
$open = fopen($sti, "r");

Eller måske fordi du ikke definerer hvad du vil med fopen?
a,r,w evt. + "+"
Avatar billede sukos Juniormester
30. maj 2004 - 12:36 #2
æhh, og jow, mener at man skal bruge 0777 og ikke bare 777
Avatar billede dennismp Nybegynder
30. maj 2004 - 13:03 #3
$count=fgets($fp,777);

du vil læse 777 bytes fra $fp ?

777 har ikke noget med rettighederne at gøre - men hvor meget du vil læse fra filen. Kig på chmod() istedet
Avatar billede jarret Nybegynder
30. maj 2004 - 13:08 #4
den siger det samme
Avatar billede jarret Nybegynder
30. maj 2004 - 13:10 #5
og den skriver "You are the 101 Visitor to This site" så den må finde dokumemtet den skriver bare ikke tilbage til dokumentet
Avatar billede dennismp Nybegynder
30. maj 2004 - 13:16 #6
Hvad har du sat permission til på den fil?
Avatar billede jarret Nybegynder
30. maj 2004 - 13:18 #7
Hvad er chmod ?

Jeg har sat den til 0777
Avatar billede jarret Nybegynder
30. maj 2004 - 13:20 #8
Lige nu ser mit script sådan ud:

$sti = $_SERVER["DOCUMENT_ROOT"] ."/Count/acc.txt";

$fp=fopen("$sti","r");

$count=fgets($fp,0777);

fclose($fp);

$fw=fopen("acc.txt","w");

$cnew=$count+1;

$countnew=fputs($fw,$count+1);
   
echo "<br>You are the $cnew  Visitor to This site";

fclose($fw);

?>
Avatar billede dennismp Nybegynder
30. maj 2004 - 13:20 #9
chmod er måden du retter permissions.

Hvordan har du sat den til 777 ?
Avatar billede dennismp Nybegynder
30. maj 2004 - 13:22 #10
$count=fgets($fp,0777);

.. igen, dette ændre ikke på permissions. (det min første indlæg)

Du bliver nød til (fx med dit ftp program) at ændre permissions så den får 777.

ellers
<?php chmod( $_SERVER["DOCUMENT_ROOT"] ."/Count/acc.txt";,0777); ?>

Bør kun skulle køres een gang.
Avatar billede jarret Nybegynder
30. maj 2004 - 13:31 #11
777 er kommet her fra (0:

http://www.eksperten.dk/spm/503734

prøver lige chmod
Avatar billede dennismp Nybegynder
30. maj 2004 - 13:39 #12
Fra manualen:

fgets -- Gets line from file pointer

Description
string fgets ( resource handle [, int length])

Returns a string of up to length - 1 bytes read from the file pointed to by handle . Reading ends when length - 1 bytes have been read, on a newline (which is included in the return value), or on EOF (whichever comes first). If no length is specified, the length defaults to 1k, or 1024 bytes.

Overbevist nu? :)
Avatar billede stefmeister Nybegynder
30. maj 2004 - 14:14 #13
Jeg bruger denne her, den virker helt fint.


<?
if(file_exists("count.dat"))
{
  $exist_file = fopen("count.dat", "r");
  $new_count = fgets($exist_file, 255);
  $new_count++;
  echo 'You are number '.$new_count.' to visit this site';
  fclose($exist_file);
  $exist_count = fopen("count.dat", "w");
  fputs($exist_count, $new_count);
  fclose($exist_count);
}
else
{
$new_file = fopen("count.dat", "w");
fputs($new_file, "1");
fclose($new_file);
}
?>
Avatar billede dennismp Nybegynder
30. maj 2004 - 14:25 #14
.. Han vil stadig få samme problem - med mindre han får rettet sine permissions..
Avatar billede stefmeister Nybegynder
30. maj 2004 - 14:35 #15
hmm okay. Det kan jeg så ikke lige hjælpe med.
Avatar billede jarret Nybegynder
30. maj 2004 - 14:47 #16
Den vil heller ikke æde chmod ´en:

Kan det være fordi serveren ikke understøtter PHP?

Warning: chmod(): Operation not permitted in /web/www.foodscience.dk/www/Count/counter.php on line 29
Avatar billede stefmeister Nybegynder
30. maj 2004 - 14:58 #17
jarret -> Hvis serveren ikke understøtter PHP, så skriver den bare det hele i form af tekst.
Avatar billede dennismp Nybegynder
30. maj 2004 - 14:59 #18
jarret: den er nok slået fra. Gør det via din ftp-program. Der kan man normalt også rette permissions.
Avatar billede jarret Nybegynder
30. maj 2004 - 15:06 #19
jeg bruger browseren som ftp....
Avatar billede jarret Nybegynder
30. maj 2004 - 15:07 #20
men jeg har måske cute liggende et sted
Avatar billede dennismp Nybegynder
30. maj 2004 - 15:19 #21
Når du har fundet et - så prøv at se efter "file permissions" eller "chmod" i menuerne/knapperne. Så burde du kunne vælge en fil og rette dem.
Avatar billede jarret Nybegynder
30. maj 2004 - 15:23 #22
jeg kan ikke finde i cute om permissions......)0:
Avatar billede jarret Nybegynder
30. maj 2004 - 15:24 #23
prøver lige
Avatar billede jarret Nybegynder
30. maj 2004 - 15:24 #24
så ikke din sidste kommentar
Avatar billede dennismp Nybegynder
30. maj 2004 - 15:35 #25
Avatar billede jarret Nybegynder
30. maj 2004 - 23:41 #26
yyyyyyyyyyyyyyyaaaaaaaaaaaaaaaaarrrrrrrrrrrrrrrrrrrr

Så var den der..tak for hjælpen og tålmodigheden....(c:
lægger du et svar?
Avatar billede dennismp Nybegynder
30. maj 2004 - 23:43 #27
Joda :-)
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