[PHP] Tekst Parsen

Pagina: 1
Acties:

  • Norckon
  • Registratie: September 2000
  • Laatst online: 30-08 21:27
Ik ben bezig met een site waarbij een groot deel op elke pagina gelijk is (zoals bij zoveel sites). Het deel wat veranderd wil ik uit de database halen.

Dus al je de pagina oproept met p=1 dan haalt ie uit de database de bijbehorende code.

Het probleem is dat dit ook echt php code kan zijn. Dit moet dus na het ophalen als php gezien worden en geparsed worden. Is dit mogelijk en zo ja, hoe?

Verwijderd

http://www.php.net/eval kan dat geloof ik.

Verwijderd

Je bedoelt dat als je bvb p=1 hebt, je uit de database een stuk code haalt, wat bvb kan zijn: 'echo "hello";', en dat wil je als php parsen? Je zou de string die de code vat dat je als php wil parsen, kunnen evalueren..

edit:

hm voortaan als ik wil reply-en direct een message reply-en en niet nog tussendoor andere dingen doen, nu is iemand me voor ;o)

  • Dennis
  • Registratie: Februari 2001
  • Nu online
Dit is onwijs slordig, en bovendien heb je ws. niet goed nagedacht over wat je wilt dat je zo'n slechte oplossing wilt. Laatst was hier ook al een hele discussie over.

Verwijderd

Waarom wil je php-functies opslaan in je db?

Verwijderd

eval is erg onveilig, je moet dan heel erg opletten dat je geen gaten bouwt. Het is vaak genoeg voorgekomen dat iemand de eval functie ontdekte en z'n eigen code erdoorheen haalde...

  • Norckon
  • Registratie: September 2000
  • Laatst online: 30-08 21:27
Ik gebruik code uit een database omdat deze code via een web-admin aan te passen moet zijn. Deze manier leek mij daarvoor het handigst. Ik vind dat DDC niet meteen zo oordelend moet spreken, maarja...

Bovengenoemde oplossing werkte inderdaad. Nu heb ik het volgende probleem :)

Zoals ik hierboven al zei wil ik de code via een webadmin aanpasbaar maken. Dit doe door de boel te tonen in een textarea. Het probleem is dat de code zelf ook textarea's bevat. Als ik dus het volgende gebruik:
code:
1
2
3
4
5
<form>
<textarea>
<?=$code?>
</textarea>
</form>

(snel getypt, echte code = uitgebreider)

en $code bevat een textarea en dus ook de </textarea> tag, dan wordt mijn zichtbare textarea dus afgesloten.
Een voorbeeld waarbij $code al ingevuld is:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<form>
<textarea>

Blabla pagina dit en dat.
Vul hier je gegevens in:
<table>
<form>
<td>Naam<td><input name=naam type=text><tr>
<td>E-Mail<td><input name=mail type=text><tr>
<td>Opmerking<td><textarea name=opm></textarea>
</table>

</textarea>
</form>


Dit gaat dus niet goed. Hoe kan ik dit onderscheppen/oplossen?

  • Norckon
  • Registratie: September 2000
  • Laatst online: 30-08 21:27
En dan? De code moet natuurlijk wel intact blijven...

  • maartenba
  • Registratie: November 2001
  • Laatst online: 29-08 17:05
laat alle tags <,>,... naar <,>,... vervangen ? (htmlspecialchars, htmlentities etc. zijn ook toffe functies)

  • nxt
  • Registratie: November 2001
  • Laatst online: 26-08 13:51

nxt

Norckon schreef op 24 augustus 2002 @ 18:03:Dit gaat dus niet goed. Hoe kan ik dit onderscheppen/oplossen?
misschien dat het wel werkt als je in het formulier een lege textarea zet
en deze achteraf met javascript vult
voorbeeld
ik heb geen idee of het werkt, maar 't is het proberen waard

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

nxt schreef op 24 augustus 2002 @ 20:07:
[...]

misschien dat het wel werkt als je in het formulier een lege textarea zet
en deze achteraf met javascript vult
voorbeeld
ik heb geen idee of het werkt, maar 't is het proberen waard
Neuh, dan krijg je waarschijnlijk een textarea waar in staat <textarea> en erachter staat </textarea>.

Maar maartenba heeft helemaal gelijk :)

  • martinvw
  • Registratie: Februari 2002
  • Laatst online: 14-12-2025
kan je niet beter ipv in de database opslaan gewoon gebruik maken van include's?
Pagina: 1