Ik wil een soort van berichtensysteem maken, dat de binnen komende berichten in een queue zet van een CMS systeem.
Dit wil is een beetje flexibel opzetten, zodat voor elk formulier dat ik maar een eigen template hoort. Deze templates wil ik opslaan in de db. Hier een voorbeeldje van een template zoals die in de db zou kunnen staan:
[code]
"Op $datum is het volgende door $_POST[\"naam\"] verstuurd:<br><hr>
email: $_POST[\"email\"]<br>$_POST[\"bericht\"]";
[code]
Hiervoor hoef ik dus alleen maar een formulier te maken met de volgende velden:
naam,email,bericht,templateID (hidden)
zo zou ik dus het complete bericht kunnen samenstellen en opslaan in de db:
Maar wat is nu het gevaar, dat de user in bijv $_POST["bericht"] php code gaat zetten? of wordt die code niet uitgevoerd?
En hoe zou het anders kunnen, als je toch begrijpelijke variabelen wil blijven gebruiken?
Dit wil is een beetje flexibel opzetten, zodat voor elk formulier dat ik maar een eigen template hoort. Deze templates wil ik opslaan in de db. Hier een voorbeeldje van een template zoals die in de db zou kunnen staan:
[code]
"Op $datum is het volgende door $_POST[\"naam\"] verstuurd:<br><hr>
email: $_POST[\"email\"]<br>$_POST[\"bericht\"]";
[code]
Hiervoor hoef ik dus alleen maar een formulier te maken met de volgende velden:
naam,email,bericht,templateID (hidden)
zo zou ik dus het complete bericht kunnen samenstellen en opslaan in de db:
PHP:
1
| eval ("\$bericht = \"$db->template\";"); |
Maar wat is nu het gevaar, dat de user in bijv $_POST["bericht"] php code gaat zetten? of wordt die code niet uitgevoerd?
En hoe zou het anders kunnen, als je toch begrijpelijke variabelen wil blijven gebruiken?
43% of all statistics are worthless