/ 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
PHP server i PHP
Fra : Kasper Johansen


Dato : 02-01-06 18:25

Hej gruppe.

Jeg sidder lidt og leger med en webserver skrevet i PHP.

Det hele fungerer sådan set fint med sockets osv. Planen var egentlig at
køre de forespurgtes filers PHP-kode med eval().

Men jeg er løbet ind i par problemer.


1. eval() sender alle variabler videre til scriptet, som at der skal køres.

2. Hvis der er en fejl, i scriptet eval() kører, stopper scriptet (hele
webserveren).

3. Der skal stadig være mulighed for at sende lidt variabler ($_SERVER
osv.).


Er der nogen der har en ide til løsning af overstående?


--
Med venlig hilsen
Kasper Johansen

 
 
Frederik Sunne (04-01-2006)
Kommentar
Fra : Frederik Sunne


Dato : 04-01-06 16:08

Kasper Johansen wrote:
> Hej gruppe.
>
> Jeg sidder lidt og leger med en webserver skrevet i PHP.
>
> Det hele fungerer sådan set fint med sockets osv. Planen var egentlig at
> køre de forespurgtes filers PHP-kode med eval().
>
> Men jeg er løbet ind i par problemer.
>
>
> 1. eval() sender alle variabler videre til scriptet, som at der skal køres.
>
> 2. Hvis der er en fejl, i scriptet eval() kører, stopper scriptet (hele
> webserveren).
>
> 3. Der skal stadig være mulighed for at sende lidt variabler ($_SERVER
> osv.).
>
>
> Er der nogen der har en ide til løsning af overstående?

Hej Kasper,

Jeg kan ikke sige at jeg forstår særlig meget af du skriver, men jeg
tror du har misforstået brugen af eval(), som er en sæf funktion, som
udelukkende giver mening i fortolkede sprog som PHP. Det giver f.eks.
mulighed for at genere variabelnavne ved runtime.

Tjek: http://dk2.php.net/manual/en/function.eval.php

Mvh,

Frederik

Kasper Johansen (04-01-2006)
Kommentar
Fra : Kasper Johansen


Dato : 04-01-06 17:02

Frederik Sunne skrev:
> Tjek: http://dk2.php.net/manual/en/function.eval.php

Det var en af de første ting jeg gjorde.


Og hvis jeg skal forklare igen, så skriver jeg et CLI-program i PHP til
at hoste hjemmesider. Hvis jeg skal skære det ud i pap, er at åbne port
80 og aflæse indkommende forspørgsler fra browsere.

Og nej jeg kan ikke bruge eval() til det. Det konkluderede jeg allerede
i min første post. Det jeg spurgte efter, var en funktion til at
eksekvere PHP-filer udfra HTTP-forspørgsler til mit program, med de
kriterier jeg skrev i min første post.


--
Med venlig hilsen
Kasper Johansen

Mads Lie Jensen (04-01-2006)
Kommentar
Fra : Mads Lie Jensen


Dato : 04-01-06 18:00

On Wed, 04 Jan 2006 17:02:13 +0100, Kasper Johansen <kaspernj@gmail.com>
wrote:

>Og hvis jeg skal forklare igen, så skriver jeg et CLI-program i PHP til
>at hoste hjemmesider. Hvis jeg skal skære det ud i pap, er at åbne port
>80 og aflæse indkommende forspørgsler fra browsere.
>
>Og nej jeg kan ikke bruge eval() til det. Det konkluderede jeg allerede
>i min første post. Det jeg spurgte efter, var en funktion til at
>eksekvere PHP-filer udfra HTTP-forspørgsler til mit program, med de
>kriterier jeg skrev i min første post.

Kan du ikke bruge noget ala:

passthru("/sti/til/php-cli /sti/til/php-script");

?

--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
-snart med hund: http://vedskovens.dk/d/hv/2005_olivia/051030/051030_d2.htm

Gartneriet - snart i ny indpakning: http://ny.gartneriet.dk

Kasper Johansen (04-01-2006)
Kommentar
Fra : Kasper Johansen


Dato : 04-01-06 19:54

Mads Lie Jensen skrev:
> Kan du ikke bruge noget ala:
>
> passthru("/sti/til/php-cli /sti/til/php-script");
>
> ?

Det var også en af mine tanker. Men hvordan får jeg så sat
server-variablerne? De skal jo sættes, så det script der køres, ved at
det f.eks. er Mozilla der bliver brugt som browser m.m.

Jeg håbede også, at jeg kunne køre scriptet inde i selve scriptet. Jeg
vil mene at det så burde køre hurtigere, da der ikke skal startes en
eksternt script (som jo er CGI og CLI's svaghed).

--
Med venlig hilsen
Kasper Johansen

Mads Lie Jensen (04-01-2006)
Kommentar
Fra : Mads Lie Jensen


Dato : 04-01-06 20:18

On Wed, 04 Jan 2006 19:54:00 +0100, Kasper Johansen <kaspernj@gmail.com>
wrote:

>> Kan du ikke bruge noget ala:
>>
>> passthru("/sti/til/php-cli /sti/til/php-script");
>>
>> ?
>
>Det var også en af mine tanker. Men hvordan får jeg så sat
>server-variablerne? De skal jo sættes, så det script der køres, ved at
>det f.eks. er Mozilla der bliver brugt som browser m.m.

Måske det kan gøres med -B switchen til php-cli?
(Bare et gæt efter hurtigt at have læst man-siden til php)

>Jeg håbede også, at jeg kunne køre scriptet inde i selve scriptet. Jeg
>vil mene at det så burde køre hurtigere, da der ikke skal startes en
>eksternt script (som jo er CGI og CLI's svaghed).

Er det ikke lidt ligegyldigt når webserveren er skrevet i php?

Men måske du kan få noget ud af:
http://dk.php.net/manual/en/ref.pcntl.php

--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
-snart med hund: http://vedskovens.dk/d/hv/2005_olivia/051030/051030_d2.htm

Gartneriet - snart i ny indpakning: http://ny.gartneriet.dk

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste