Avatar billede frelancer Nybegynder
24. juni 2003 - 10:36 Der er 21 kommentarer og
1 løsning

fejl på en søjle afstemning

der står: Parse error: parse error, unexpected $end in c:\programmer\apache group\apache\htdocs\soejle.php on line 58
script ser sådan her ud:
<?
function hent_stemme($fil_endelse){
$filnavn="stem".$fil_endelse;
$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($andel,$samlet){
$stemme_procent=$andel/$samlet*100;
$stemme_procent=round($stemme_procent);
echo "$stemme_procent%";
echo "<IMG SRC=\"smaa.gif\" HEIGHT= 7 WIDTH= $stemme_procent BORDER= 0>";
}
if((!$har_stemt)&&($stemme)){
$har_stemt=1;
setcookie("har_stemt","1",time()+1209600);
stem($stemme);
}
?>
<HTML>
<HEAD><TITLE>Stemme-script</TITLE></HEAD>
<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>
håber i kan hjælpe
Avatar billede andy Nybegynder
24. juni 2003 - 10:39 #1
du mangler en } efter din sidste }
Avatar billede jpvj Nybegynder
24. juni 2003 - 10:42 #2
andy> enig!
Avatar billede frelancer Nybegynder
24. juni 2003 - 10:43 #3
nu skriver den det her:
Warning: fopen(stem1) [function.fopen]: failed to create stream: No such file or directory in c:\programmer\apache group\apache\htdocs\soejle.php on line 4

Warning: fgets(): supplied argument is not a valid stream resource in c:\programmer\apache group\apache\htdocs\soejle.php on line 5

Warning: fopen(stem2) [function.fopen]: failed to create stream: No such file or directory in c:\programmer\apache group\apache\htdocs\soejle.php on line 4

Warning: fgets(): supplied argument is not a valid stream resource in c:\programmer\apache group\apache\htdocs\soejle.php on line 5

Warning: fopen(stem3) [function.fopen]: failed to create stream: No such file or directory in c:\programmer\apache group\apache\htdocs\soejle.php on line 4

Warning: fgets(): supplied argument is not a valid stream resource in c:\programmer\apache group\apache\htdocs\soejle.php on line 5

Warning: fopen(stem4) [function.fopen]: failed to create stream: No such file or directory in c:\programmer\apache group\apache\htdocs\soejle.php on line 4

Warning: fgets(): supplied argument is not a valid stream resource in c:\programmer\apache group\apache\htdocs\soejle.php on line 5
 
Warning: Division by zero in c:\programmer\apache group\apache\htdocs\soejle.php on line 16
0%

Warning: Division by zero in c:\programmer\apache group\apache\htdocs\soejle.php on line 16
0%

Warning: Division by zero in c:\programmer\apache group\apache\htdocs\soejle.php on line 16
0%

Warning: Division by zero in c:\programmer\apache group\apache\htdocs\soejle.php on line 16
0%
Avatar billede fri-hash Nybegynder
24. juni 2003 - 10:48 #4
ja, den kan ikke finde filerne "stem1", "stem2", osv (manglwer tilsyneladende en extension?)
da den ikke kan åbne filerne, kan den heller ikke hente data derfra (fgets), og da der ikke bliver hentet data ender du med at dividere med nul, hvilket som matematisk bekendt ikke kan lade sig gøre
Avatar billede frelancer Nybegynder
24. juni 2003 - 11:11 #5
jeg er begynder til php jeg sidder og bruger en bog og i den stå der ikke skal stå noget i stem1-4 men at de bare skal ligge der. Hvordan skifter jeg rettighederne på dem til 666.
Avatar billede frelancer Nybegynder
24. juni 2003 - 11:23 #6
der stå jeg skal skifte rettighederne om til 666 hvordan gjør jeg det
Avatar billede detox Nybegynder
24. juni 2003 - 11:31 #7
Du kan fx bruge php's function chmod()
chmod ("/somedir/somefile", 0666);
Avatar billede frelancer Nybegynder
24. juni 2003 - 11:57 #8
i kan lige se en af mine stem:
<html>
<body>
<?
chmod ("/somedir/somefile", 0666);
?>
</html>
</body>
Avatar billede detox Nybegynder
24. juni 2003 - 12:13 #9
Ja, du kommmer lige til at bytte somedir og somefile ud med de aktuelle værdier. Og husk det er kun noget du behøver gøre en gang. Det du gør er at give skrive og læserettigheder til filen. Alternativt kan du bruge et ftp-program til formålet.
Avatar billede frelancer Nybegynder
24. juni 2003 - 12:17 #10
hvad værdier skal jeg bruge
Avatar billede detox Nybegynder
24. juni 2003 - 12:21 #11
dirnavn og filnavn, evt bare filnavn, hvis du bruger funktionen i samme dir som filerne du skal chmod'e ligger i.
Avatar billede detox Nybegynder
24. juni 2003 - 12:27 #12
Avatar billede frelancer Nybegynder
24. juni 2003 - 12:43 #13
der er stadig de sammen fejl
<html>
<body>
<?
chmod ("/dirnavn/filnavn", 0666);
?>
</html>
</body>
så skal jeg skrive htdocs istedet for dirnavn og soejle istedet for filnavn htdocs er der alle filerne ligger.
Avatar billede frelancer Nybegynder
24. juni 2003 - 13:42 #14
er der ikke en der vil skrive hvad der skal så i stem1-4.
Avatar billede detox Nybegynder
25. juni 2003 - 02:21 #15
<?
for($fil_nr=1;$fil_nr<=4;$fil_nr++){
  $fil = "stem" . $fil_nr;
  chmod($fil, 0666);
  }
?>
Så skal du køre den fra samme mappe hvor dine "stem" filer ligger
Avatar billede frelancer Nybegynder
25. juni 2003 - 08:09 #16
Den kan heller ikke finde stem filen og de ligger i samme mappe
Avatar billede detox Nybegynder
25. juni 2003 - 12:14 #17
Hvis jeg har forstået det rigtigt, så hedder dine filer: "stem1", "stem2", "stem3" og "stem4" er det korrekt?
Avatar billede detox Nybegynder
25. juni 2003 - 12:27 #18
Forøvrigt har du osse en fejl her (filnr/fil_nr):
-------------------------------------------------
for($fil_nr=1;$fil_nr<=4;$fil_nr++){
echo "<TR><TD>$tekst[$fil_nr]</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 frelancer Nybegynder
25. juni 2003 - 15:45 #19
ja de hedder "stem1", "stem2", "stem3" og "stem4"
Avatar billede detox Nybegynder
25. juni 2003 - 15:53 #20
Så forstår jeg ikke hvorfor den ikke kan finde dem. Det er jo samme fejlmeddelelse du får i det andet script, hvor den osse siger at den ikke kan finde filerne.
Warning: fopen(stem1) [function.fopen]: failed to create stream: No such file or directory in c:\programmer\apache group\apache\htdocs\soejle.php on line 4
Avatar billede zeiox Nybegynder
29. september 2004 - 16:41 #21
Jeg har netop svaret på dit problem:
Tekstdokument'er skulle gerne ende på txt..

Og det har du vist glemt, her er din nye 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;
$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=\"smaa.gif\" HEIGHT= 7 WIDTH= $stemme_procent BORDER= 0>";
}
if((!$har_stemt)&&($stemme)){
$har_stemt=1;
setcookie("har_stemt","1",time()+1209600);
stem($stemme);
}
?>
<HTML>
<HEAD><TITLE>Stemme-script</TITLE></HEAD>
<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[$fil_nr]</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 frelancer Nybegynder
01. oktober 2004 - 09:16 #22
Takker
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