Avatar billede tfswebguy Nybegynder
22. september 2008 - 13:54 Der er 9 kommentarer og
1 løsning

Hjælp med eregi_replace

Hvordan kan jeg få denne stump til at virke?

$text = eregi_replace("<inc:([^\[]+)\>", include(\\0), $text);

Mvh Daniel
Avatar billede tfswebguy Nybegynder
22. september 2008 - 13:55 #1
Edit: $text = eregi_replace("<inc:([^\[]+)\>", include(\\1), $text);

SÅdan, hvordan kan jeg få det til at lykkes?
Avatar billede jensgram Nybegynder
22. september 2008 - 21:40 #2
Forstår jeg det rigtigt, hvis du rent faktisk vil include() filen? Så skal du have fat i preg-funktionerne i stedet:

$text = eregi_replace("/<inc:([^\[]+)\>/e", "include_once('\\1')", $text);

Utestet
Avatar billede jensgram Nybegynder
22. september 2008 - 21:42 #3
Hov - der var da flere fejl :)

$text = preg_replace("/<inc:([^\[]+)\>/ei", "include_once('\\1')", $text);
Avatar billede tfswebguy Nybegynder
23. september 2008 - 10:06 #4
jeg prøver med det samme, og hvis det virker, så WEEEE :D
Avatar billede tfswebguy Nybegynder
23. september 2008 - 10:19 #5
det virker.. Men ikk lige på den måde jeg håbede på.. Men det var løsningen, så du skal have point for det

Tror bare jeg laver en
if($text == "<inc:([^\[]+)\>"){
include_once('\\1');
}

Kan dette lade sig gøre?
Avatar billede tfswebguy Nybegynder
23. september 2008 - 10:19 #6
nå ja, med den include kommer include filen i starten af siden, og ikk inde i designet hvor den ønskes. Deraf fejlen
Avatar billede tfswebguy Nybegynder
23. september 2008 - 10:29 #7
og jeg lukker lige mig selv.. Jeg kunne jo bare køre kommandoen af det rigtige sted, hehe.

Det virker faktisk (Så længe include filen ikk starter session, da hovedsiden allerede gør det).

MEN, efter includen kommer der et 1:

Eks:

Koden:
<form>
Navn: <input name="navn"><br>
Email: <input name="email"><br>
Ost: <input name="ost"><br>
</form>

Output:
<form>
Navn: <input name="navn"><br>
Email: <input name="email"><br>
Ost: <input name="ost"><br>
</form>1

Hvorfor gør den lige det?
Avatar billede jensgram Nybegynder
23. september 2008 - 12:05 #8
Hov - har ikke lige været online siden i går :)

Den udskriver sgu nok returnværdien - det kan jeg dog ikke lige finde i manualen. Hvad sker der hvis du:

function inc($f) {
    include_once($f);
}
$text = preg_replace("/<inc:([^\[]+)\>/ei", "inc('\\1')", $text);

Bare for at teste?!
Avatar billede tfswebguy Nybegynder
23. september 2008 - 12:16 #9
Jamen det så SMUKT :D

Takker, smid svar, jeg er glad i dag, hehehe :D
Avatar billede jensgram Nybegynder
23. september 2008 - 12:25 #10
Så lidt.
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