/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Problem med If
Fra : Kurt G


Dato : 04-11-10 15:05

Hej NG.

Det driller!!!
Jeg har følgende funktion:

function MakeMenu()
{
$AntalMenuer = 0;
$fil = fopen("menutekst.txt","r");
while (!feof($fil))
{
$streng = fgets($fil);
echo "Streng:".$streng." Substreng
0,2=".substr($streng,0,2)."<br>";
$substreng = substr($streng,0,2);
If $substreng == "//"
// If $substreng <> "//"
// If $AntalMenuer ==11
// If 1 == 1
{
$MenuLinier[] = $streng;
$AntalMenuer++;
}
} //while
Echo "Der er ".$AntalMenuer." menulinier. <br>";
} // Function

Problemet er, at der intet skrives ud, når If-sætningen bruges. Det ser ud
til, at alt stopper!
Kommenterer jeg If-sætningen ud, kommer der fint udskrift.
Også de de tre andre If-sætninger sætter programmet i stå.

Er der et eller andet banalt, som jeg har glemt?

Mvh Kurt



 
 
Karl Erik Christense~ (04-11-2010)
Kommentar
Fra : Karl Erik Christense~


Dato : 04-11-10 15:44

On 04-11-2010 15:04, Kurt G wrote:

> Er der et eller andet banalt, som jeg har glemt?
>
> Mvh Kurt
>
>

Prøv at undersøge om du kan bruge <br> i din php-kode.

Karl Erik.

--
http://www.tyveri-check.dk - Snyd tyven før han snyder dig!
http://www.ranunkelvej.com
http://webdesign.ranunkelvej.com - Artikler om webdesign


Kurt G (04-11-2010)
Kommentar
Fra : Kurt G


Dato : 04-11-10 15:52

"Karl Erik Christensen" <karlerik@none.invalid.com> skrev i en meddelelse
news:4cd2c6c2$0$23760$14726298@news.sunsite.dk...
> On 04-11-2010 15:04, Kurt G wrote:
>
>> Er der et eller andet banalt, som jeg har glemt?
>>
>> Mvh Kurt
>>
>>
>
> Prøv at undersøge om du kan bruge <br> i din php-kode.
>
> Karl Erik.
>

Det kan jeg ikke, jeg indsatte den øverst efter While.

Det eneste, som kommer frem er en tom skærm.
Kildekoden på sitet:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="da">
   <head>
   <title>Vinderup Egnshistoriske Forening</title>
   <link rel="stylesheet" href="/style.css" type="text/css" media="print">
   <link rel="stylesheet" href="/style.css" type="text/css" media="screen">
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" >
</head>
<body>
Det er tilsyneladende gået helt i stå.Mvh Kurt



Karl Erik Christense~ (04-11-2010)
Kommentar
Fra : Karl Erik Christense~


Dato : 04-11-10 17:34

On 04-11-2010 15:51, Kurt G wrote:

> Det kan jeg ikke, jeg indsatte den øverst efter While.
>

Nej for du skal skrive <br />\n

Karl Erik.

--
http://www.tyveri-check.dk - Snyd tyven før han snyder dig!
http://www.ranunkelvej.com
http://webdesign.ranunkelvej.com - Artikler om webdesign


Kurt G (04-11-2010)
Kommentar
Fra : Kurt G


Dato : 04-11-10 22:58

"Karl Erik Christensen" <karlerik@none.invalid.com> skrev i en meddelelse
news:4cd2e095$0$23758$14726298@news.sunsite.dk...
> On 04-11-2010 15:51, Kurt G wrote:
>
>> Det kan jeg ikke, jeg indsatte den øverst efter While.
>>
>
> Nej for du skal skrive <br />\n
>
> Karl Erik.
>
> --
> http://www.tyveri-check.dk - Snyd tyven før han snyder dig!
> http://www.ranunkelvej.com
> http://webdesign.ranunkelvej.com - Artikler om webdesign

Ja ifølge manualen, men den virker nu alligevel, når der eller skrives
noget!

Mvh Kurt



Krabsen (04-11-2010)
Kommentar
Fra : Krabsen


Dato : 04-11-10 17:25

Den 04-11-2010 15:04, Kurt G skrev:
> Hej NG.
>
> Det driller!!!
> Jeg har følgende funktion:
>
> function MakeMenu()
> {
> $AntalMenuer = 0;
> $fil = fopen("menutekst.txt","r");
> while (!feof($fil))
> {
> $streng = fgets($fil);
> echo "Streng:".$streng." Substreng
> 0,2=".substr($streng,0,2)."<br>";
> $substreng = substr($streng,0,2);
> If $substreng == "//"
> // If $substreng<> "//"
> // If $AntalMenuer ==11
> // If 1 == 1
> {
> $MenuLinier[] = $streng;
> $AntalMenuer++;
> }
> } //while
> Echo "Der er ".$AntalMenuer." menulinier.<br>";
> } // Function
>
> Problemet er, at der intet skrives ud, når If-sætningen bruges. Det ser ud
> til, at alt stopper!
> Kommenterer jeg If-sætningen ud, kommer der fint udskrift.
> Også de de tre andre If-sætninger sætter programmet i stå.
>
> Er der et eller andet banalt, som jeg har glemt?

Skal If-betingelsen ikke i parentes ?

If ($substreng == "//"){
etellerandet;
}

...eller er det ikke nødvendigt - jeg plejer altid at gøre det.

Birger Sørensen (04-11-2010)
Kommentar
Fra : Birger Sørensen


Dato : 04-11-10 22:49

Krabsen sendte dette med sin computer:
> Den 04-11-2010 15:04, Kurt G skrev:
>> Hej NG.
>>
>> Det driller!!!
>> Jeg har følgende funktion:
>>
>> function MakeMenu()
>> {
>> $AntalMenuer = 0;
>> $fil = fopen("menutekst.txt","r");
>> while (!feof($fil))
>> {
>> $streng = fgets($fil);
>> echo "Streng:".$streng." Substreng
>> 0,2=".substr($streng,0,2)."<br>";
>> $substreng = substr($streng,0,2);
>> If $substreng == "//"
>> // If $substreng<> "//"
>> // If $AntalMenuer ==11
>> // If 1 == 1
>> {
>> $MenuLinier[] = $streng;
>> $AntalMenuer++;
>> }
>> } //while
>> Echo "Der er ".$AntalMenuer." menulinier.<br>";
>> } // Function
>>
>> Problemet er, at der intet skrives ud, når If-sætningen bruges. Det ser ud
>> til, at alt stopper!
>> Kommenterer jeg If-sætningen ud, kommer der fint udskrift.
>> Også de de tre andre If-sætninger sætter programmet i stå.
>>
>> Er der et eller andet banalt, som jeg har glemt?
>
> Skal If-betingelsen ikke i parentes ?
>
> If ($substreng == "//"){
> etellerandet;
> }
>
> ..eller er det ikke nødvendigt - jeg plejer altid at gøre det.

Der mangelr paranter - de skal altid være der, selv i
if (true) { ...}

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Kurt G (05-11-2010)
Kommentar
Fra : Kurt G


Dato : 05-11-10 18:34

"Krabsen" <usenet@krabsen.dk> skrev i en meddelelse news:4cd2de6b$0$23762 Er
der et eller andet banalt, som jeg har glemt?
>
> Skal If-betingelsen ikke i parentes ?
>
> If ($substreng == "//"){
> etellerandet;
> }
>
> ..eller er det ikke nødvendigt - jeg plejer altid at gøre det.

Jo, det skal den da!!!

Mvh Kurt




Martin (05-11-2010)
Kommentar
Fra : Martin


Dato : 05-11-10 06:08

On 04-11-2010 15:04, Kurt G wrote:
> Hej NG.
>
> Det driller!!!
> Jeg har følgende funktion:
>
> function MakeMenu()
> {
> $AntalMenuer = 0;
> $fil = fopen("menutekst.txt","r");
> while (!feof($fil))
> {
> $streng = fgets($fil);
> echo "Streng:".$streng." Substreng
> 0,2=".substr($streng,0,2)."<br>";
> $substreng = substr($streng,0,2);
> If $substreng == "//"
> // If $substreng<> "//"
> // If $AntalMenuer ==11
> // If 1 == 1
> {
> $MenuLinier[] = $streng;
> $AntalMenuer++;
> }
> } //while
> Echo "Der er ".$AntalMenuer." menulinier.<br>";
> } // Function
>
> Problemet er, at der intet skrives ud, når If-sætningen bruges. Det ser ud
> til, at alt stopper!
> Kommenterer jeg If-sætningen ud, kommer der fint udskrift.
> Også de de tre andre If-sætninger sætter programmet i stå.
>
> Er der et eller andet banalt, som jeg har glemt?

Prøv at skrive
ini_set('display_errors', '1');
error_reporting(E_ALL);
øverst i din PHP, det ligner mest fordi der er en PHP fejl, og på en
standard PHP udrulning er display_errors sat til 0 (da det er det mest
optimale i et produktions miljø)

Kurt G (05-11-2010)
Kommentar
Fra : Kurt G


Dato : 05-11-10 22:28

KLIPPET
> Problemet er, at der intet skrives ud, når If-sætningen bruges. Det ser ud
> til, at alt stopper!
> Kommenterer jeg If-sætningen ud, kommer der fint udskrift.
> Også de de tre andre If-sætninger sætter programmet i stå.
>
> Er der et eller andet banalt, som jeg har glemt?
>
> Mvh Kurt

Efter at have fået serveren til at udskrive fejl, har det vist sig, at det i
virkeligheden er et problem med filadgang.
Jeg har ikke lov til at tilgå serveren for at læse filer.

Serveren skriver:
Warning: opendir(): open_basedir restriction in effect. File(/) is not
within the allowed path(s):
(/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk:/var/www/diagnostics:/usr/share/php)
in
/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk/httpd.www/header.php
on line 37

Warning: opendir(/): failed to open dir: Operation not permitted in
/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk/httpd.www/header.php
on line 37

Warning: readdir() expects parameter 1 to be resource, boolean given in
/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk/httpd.www/header.php
on line 38

Warning: fclose() expects parameter 1 to be resource, null given in
/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk/httpd.www/header.php
on line 43

37 $mappe = opendir("/");
38 while ($fil = readdir($mappe))

43 fclose($fil);

For mig giver det ikke nogen mening!

Mvh Kurt



Leif Neland (05-11-2010)
Kommentar
Fra : Leif Neland


Dato : 05-11-10 22:50

Den 05-11-2010 22:28, Kurt G skrev:

> Efter at have fået serveren til at udskrive fejl, har det vist sig, at det i
> virkeligheden er et problem med filadgang.
> Jeg har ikke lov til at tilgå serveren for at læse filer.
>
> Serveren skriver:
> Warning: opendir(): open_basedir restriction in effect. File(/) is not
> within the allowed path(s):
> (/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk:/var/www/diagnostics:/usr/share/php)
> in
> /customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk/httpd.www/header.php
> on line 37

>
> For mig giver det ikke nogen mening!

Det er da en klar melding.

Du prøver at læse mappen "/", dvs webserverens rod. Der har du ikke
noget at gøre.

Du må kun læse mapperne
/customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk
/var/www/diagnostics
/usr/share/php
(og mapper derunder)

Hvis du vil starte i hjemmesidens rod, hedder den $_SERVER["DOCUMENT_ROOT"]

Leif



--
Bevar P2, luk P3, der er nok P3'er i forvejen.

Kurt G (05-11-2010)
Kommentar
Fra : Kurt G


Dato : 05-11-10 23:47

"Leif Neland" <leif@neland.dk> skrev i en meddelelse news:4cd47c18$0$36574>
> Det er da en klar melding.
>
> Du prøver at læse mappen "/", dvs webserverens rod. Der har du ikke noget
> at gøre.
>
> Du må kun læse mapperne
> /customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk
> /var/www/diagnostics
> /usr/share/php
> (og mapper derunder)
>
> Hvis du vil starte i hjemmesidens rod, hedder den
> $_SERVER["DOCUMENT_ROOT"]
>
> Leif

Ok, derfor.
Jeg havde for at være sikker på ikke at gøre noget forker, valgt et eksempel
fra et hæfte om PHP, men de er nok beregnet på lokal drift på egen PC.
Det var så dumt!

MVh Kurt



scootergrisen (06-11-2010)
Kommentar
Fra : scootergrisen


Dato : 06-11-10 19:17



Den 05-11-2010 23:46, Kurt G skrev:
> "Leif Neland"<leif@neland.dk> skrev i en meddelelse news:4cd47c18$0$36574>
>> Det er da en klar melding.
>>
>> Du prøver at læse mappen "/", dvs webserverens rod. Der har du ikke noget
>> at gøre.
>>
>> Du må kun læse mapperne
>> /customers/vinderup-egnshistorie.dk/vinderup-egnshistorie.dk
>> /var/www/diagnostics
>> /usr/share/php
>> (og mapper derunder)
>>
>> Hvis du vil starte i hjemmesidens rod, hedder den
>> $_SERVER["DOCUMENT_ROOT"]
>>
>> Leif
>
> Ok, derfor.
> Jeg havde for at være sikker på ikke at gøre noget forker, valgt et eksempel
> fra et hæfte om PHP, men de er nok beregnet på lokal drift på egen PC.
> Det var så dumt!
>
> MVh Kurt
>
>

Birger Sørensen (05-11-2010)
Kommentar
Fra : Birger Sørensen


Dato : 05-11-10 23:47

Efter mange tanker skrev Kurt G:
8X
> 37 $mappe = opendir("/");
> 38 while ($fil = readdir($mappe))
>
> 43 fclose($fil);
8X

Nu fremgår det ikke helt, hved det er du skal bruge det til, men hvis
det er for at få filnavne, så overvej at bruge glob() i stedet. Det er
sommetider lidt nemmere at arbejde med.

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Birger Sørensen (05-11-2010)
Kommentar
Fra : Birger Sørensen


Dato : 05-11-10 23:48

Birger Sørensen udtrykte præcist:
> Efter mange tanker skrev Kurt G:
> 8X
>> 37 $mappe = opendir("/");
>> 38 while ($fil = readdir($mappe))
>>
>> 43 fclose($fil);
> 8X
>
> Nu fremgår det ikke helt, hved det er du skal bruge det til, men hvis det er
> for at få filnavne, så overvej at bruge glob() i stedet. Det er sommetider
> lidt nemmere at arbejde med.
>
> Birger

Glemte så lige linket:
http://dk2.php.net/manual/en/function.glob.php

Briger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Kurt G (08-11-2010)
Kommentar
Fra : Kurt G


Dato : 08-11-10 17:39

"Birger Sørensen" <sdc@bbsorensen.com> skrev i en meddelelse
news:4cd489b0$0$23754$14726298@news.sunsite.dk...
> Birger Sørensen udtrykte præcist:
>> Efter mange tanker skrev Kurt G:
>> 8X
>>> 37 $mappe = opendir("/");
>>> 38 while ($fil = readdir($mappe))
>>>
>>> 43 fclose($fil);
>> 8X
>>
>> Nu fremgår det ikke helt, hved det er du skal bruge det til, men hvis det
>> er for at få filnavne, så overvej at bruge glob() i stedet. Det er
>> sommetider lidt nemmere at arbejde med.
>>
>> Birger
>
> Glemte så lige linket:
> http://dk2.php.net/manual/en/function.glob.php
>
> Briger
>
> --
> http://varmeretter.dk - billig, sund og hurtig mad
> http://bbsorensen.dk
>
Det var faktisk kun et forsøg på at få hul på noget.
Jeg kunne efterhånden ikke få noget som helst til at virke og fandt et hæfte
frem og prøvede et simpelt eksempel. Det var så tilsyneladende beregnet til
at køre på egen lokal server, hvilket jeg jo ikke gjorde.

Tak for hjælpen til jer alle, jeg vender snart tilbage med nye problemer

Mvh Kurt



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste