Toon posts:

[PHP] Regex / Escapes + Quotes / Templates

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik post normaal bijna nooit een vraag (op geeneen forum, Google en de searches op vele fora vind ik veel handiger :)), maar dit is ff 'n uitzondering..

Waarom? Omdat ik er al 5 maanden mee bezig ben en ik kan er maar niet achter komen wat er nou fout is..


M'n probleem:

Ik gebruik Yapter als template engine zodat ik HTML gescheiden kan houden van de PHP scripts.
Dit leek allemaal te mooi om waar te zijn, en helaas is dat 't waarschijnlijk ook..

Op m'n localhost werkt alles zo als 't zou moeten werken.
Wanneer ik m'n site upload naar de server (bij ASHosting - pakket 1/PHP/MySQL) is er een heel groot probleem..

De pagina's zien er niet uit, en dat komt omdat in alle HTML (de templates) de quotes (") zijn vervangen door \" (escape karakter komt erbij)

<a href="#">link</a> wordt dus <a href=\"#\">link</a> (in de uiteindelijke HTML code die de browser gebruikt om de pagina weer te geven.. GEEN PHP dus)

Dit is natuurlijk niet de bedoeling.. en gebeurd dus niet bij mij op m'n localhost maar wel op de server van ASHosting.

Maar wat nog vreemder is dat dit niet altijd zo is op de server.. soms gaat alles gewoon goed en zien de pagina's er uit zoals ze zouden moeten wezen.



De mogelijke oplossing(en):

Het ligt niet aan Yapter:
- ik had dit zelfde probleem met vele andere template engines (fastTemplate, etc)

Alle quotes in de HTML code weghalen:
- is ook niet altijd mogelijk, en het is niet de standaard (ie. De HTML validator op w3c gaat dan zeuren)

de ireg* en preg* functies:
- zou kunnen dat 't probleem hier ligt.. maar ook weer niet, want bij _ALLE_ template engines gaat het mis, en ze doen 't allemaal op 'n andere manier.
Waarom bij deze functies?
Omdat bij de meeste template engines de code hier goed erin gaat, en er verkeerd uitkomt, met de extra escapes voor de quotes.

ASHosting:
- Ik denk eigenlijk dat er iets ernstig mis is met de instellingen op de server van ASHosting..
Mailtje daarvoor gaat binnenkort de virtuele deur uit.


Ik kan helaas geen links geven, maar ik hoop wel dat er iemand is die dit probleem herkent en/of ook heeft gehad, liefst ook met ASHosting, en mij aan 'n oplossing kan helpen en er dus voor zorgt dat ik de komende 10 jaar niet nóg zit te zoeken..

  • Grum
  • Registratie: Juni 2001
  • Niet online
klinkt als magische runtime quotes :)


  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op woensdag 13 februari 2002 13:51 schreef Richardve het volgende:
Ik post normaal bijna nooit een vraag (op geeneen forum, Google en de searches op vele fora vind ik veel handiger :)), maar dit is ff 'n uitzondering..
Bravo, een goede topicstart! Goed weergegeven wat je allemaal al gedaan hebt enzo, mijn complimenten. Van dit soort topics moeten er meer komen! :)

Maar nu over je probleem: kijk eens zoals Grum_ zei naar de magic quotes... dit kun je ook in de PHP-info zien. Daarnaast kun je ook proberen stripslashes te doen, maar of dat mogelijk is in deze situatie is, weet ik niet.

Verwijderd

Topicstarter
Op woensdag 13 februari 2002 13:52 schreef Grum_ het volgende:
klinkt als magische runtime quotes :)

Ah.. bedankt, ik ga 't meteen proberen. :)

Verwijderd

Topicstarter
Op woensdag 13 februari 2002 13:58 schreef elnino het volgende:

[..]

Bravo, een goede topicstart! Goed weergegeven wat je allemaal al gedaan hebt enzo, mijn complimenten. Van dit soort topics moeten er meer komen! :)
Tnx :)
Maar nu over je probleem: kijk eens zoals Grum_ zei naar de magic quotes... dit kun je ook in de PHP-info zien. Daarnaast kun je ook proberen stripslashes te doen, maar of dat mogelijk is in deze situatie is, weet ik niet.
Is niet echt goed mogelijk (zie code van template engines), maar als dat magische quote gedoe ook niet werkt dan is dat 't eerste wat ik ga proberen (met wat knip en plak werk).

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Richardve:
Is niet echt goed mogelijk (zie code van template engines), maar als dat magische quote gedoe ook niet werkt dan is dat 't eerste wat ik ga proberen (met wat knip en plak werk).
Ik denk dat dat eenvoudiger kan dan je denkt, hoor:
code:
1
2
3
4
5
6
7
8
ob_start ();

// hier al je code en je template meuk

$str = stripslashes ( ob_get_contents () );
ob_end_clean();

echo $str;

Output buffering is dan de key. Maar dat is niet echt een goeie oplossing imo. Het moet beter kunnen. Laat ff weten hoe het je vergaat :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Topicstarter
Hm, ik had eerder willen reageren, maar Sonera (of eigenlijk QuickNet) denkt daar soms anders over.. :/

Maar 't uitzetten van die magische quotes heeft geholpen!
Harstikke bedankt voor de hulp! :)

Verwijderd

Topicstarter
Op woensdag 13 februari 2002 14:50 schreef drm het volgende:

Maar dat is niet echt een goeie oplossing imo. Het moet beter kunnen. Laat ff weten hoe het je vergaat :)
Dat vond ik zelf idd ook niet echt 'n goeie oplossing, vandaar :)

Maar goed, 't is opgelost.. :)
Pagina: 1