|
| Større problem Fra : Ronni - The Real One~ |
Dato : 20-01-02 03:54 |
|
Hej Ng
Jeg sidder og laver mit eget template system, der er lidt underligt! :) men
det funker til mit formål.
Det er lavet med en class "template" som indeholder et array "content" hvor
man assigner de forskellige dele
til siden. Når dette er gjort parser den så det hele med et design
(template).
For lige at forklare lidt nærmere hvordan det virker, så henter filen eks.
index.php (den der kaldes i browseren)
template.class , den definere templaten (eks design.html) , den assigner
content (eks $tpl->assign("content","hello world");)
smækker det hele sammen vha parse( ) fra template.class og smider det ud på
skærmen.
Jeg har lavet det sådan at det der assignes til content kan være en fil,
noget kode eller text angivet
ved eks. $tpl->assign("content","file:default.php");
Dvs at index.php henter template.class , definere template fil , henter
indholdet af filen assignet til content, evaluere
koden som lå i filen , smækker det sammen med template filen og spytter det
ud på skærmen.
Det går også fint nok den kan fint tage både filer og kode, fixe det og
smide det ind i designet (templaten)
så det ser godt ud, men ikke hvis man eks. har angivet nogle GET parameter ?
Det vil sige at hvis jeg giver nogle parameter eks index.php?sideid=mad
skal $HTTP_GET_VARS[mad] kunne bruges under evalueringen af default.php (den
som angives til content $tpl->assign("content","file:default.php"); ) i
parse( ) funktionen i template.class, men det funker bare ikke ?
Den registrere simpelthen ikke noget i $HTTP_GET_VARS ?
Har prøvet med $GLOBALS[$HTTP_GET_VARS] , global $HTTP_GET_VARS osv men
intet virker ?
Er der noget specielt variabel scope når man bruger klasser og klassers
metoder/funktioner ?
Håber I kan forstå noget af det ? :))
ellers må jeg prøve at skære det mere ud i pap...
m v h
Ronni
ronni1@ofir.dk
| |
Tonni Aagesen (20-01-2002)
| Kommentar Fra : Tonni Aagesen |
Dato : 20-01-02 04:54 |
|
"Ronni - The Real One " <ronni1@ofir.dk> skrev i en meddelelse
news:3c4a3150$0$62866$edfadb0f@dspool01.news.tele.dk...
> Hej Ng
> Den registrere simpelthen ikke noget i $HTTP_GET_VARS ?
> Har prøvet med $GLOBALS[$HTTP_GET_VARS] , global $HTTP_GET_VARS osv men
> intet virker ?
Jeg bruger f.eks. $GLOBALS['REQUEST_URI'] uden problemer i en klasse. Måske
har du track_vars slået fra i php.ini? Har du prøvet følgende:
$GLOBALS['$HTTP_GET_VARS['foobar']'];
eller..
$GLOBALS['{$HTTP_GET_VARS['foobar']}'];
--
Mvh
Tonni Aagesen
agent29@mail1.stofanet.dk
| |
Ronni - The Real One~ (20-01-2002)
| Kommentar Fra : Ronni - The Real One~ |
Dato : 20-01-02 13:45 |
|
> Jeg bruger f.eks. $GLOBALS['REQUEST_URI'] uden problemer i en klasse.
Måske
> har du track_vars slået fra i php.ini? Har du prøvet følgende:
>
> $GLOBALS['$HTTP_GET_VARS['foobar']'];
>
> eller..
>
> $GLOBALS['{$HTTP_GET_VARS['foobar']}'];
>
Virker heller ikke og track_vars er ikke slået fra, for jeg kan fint hente
variablen i index.php
Desuden havde ovenstående ikke været godt nok, da jeg så skulle skrive det
for samtlige
variabler jeg skulle bruge. Og da template systemet skal kunne bruges uden
at ændre
i koden, skal samtlige $HTTP_GET_VARS , $HTTP_POST_VARS etc være
tilgængelige,
uden brug af ekstra kode.
m v h
Ronni
ronni1@ofir.dk
| |
Jonas Delfs (20-01-2002)
| Kommentar Fra : Jonas Delfs |
Dato : 20-01-02 16:01 |
|
"Ronni - The Real One " <ronni1@ofir.dk> skrev i en meddelelse
news:3c4a3150$0$62866$edfadb0f@dspool01.news.tele.dk...
> Hej Ng
>
> Jeg sidder og laver mit eget template system, der er lidt underligt! :)
men
> det funker til mit formål.
>
[snip problemstilling]
Hvordan henter du indholdet af en fil?
Du kan fx. ikke åbne en lokal fil med fopen() med GET-parametre. Du bliver
nød til at requeste filen ude fra: http://mit.domæne.dk/fil.php?flaf=hej
hvilket kræver at din PHP understøtter kald med fopen() til eksterne filer.
Prøv ad.
--
Mvh./Best Regards
Jonas Delfs, http://delfs.dk
| |
Ronni - The Real One~ (20-01-2002)
| Kommentar Fra : Ronni - The Real One~ |
Dato : 20-01-02 18:51 |
|
> Hvordan henter du indholdet af en fil?
> Du kan fx. ikke åbne en lokal fil med fopen() med GET-parametre. Du bliver
> nød til at requeste filen ude fra: http://mit.domæne.dk/fil.php?flaf=hej
> hvilket kræver at din PHP understøtter kald med fopen() til eksterne
filer.
> Prøv ad.
Jeg åbner filen og henter alt indholdet over i en string, vha fopen, fread
Det burde da kunne lade sig gøre ?
m v h
Ronni
ronni1@ofir.dk
| |
|
|