[PHP/MYSQL] dir openen binnen template cms

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Anoniem: 60900

Topicstarter
Beste tweakers,

Ik heb een cms gebouwd dat pagina's laadt vanuit een database:
code:
1
$q = "SELECT * FROM t_teksten WHERE url = \"" . $_GET['p'] . "\" ";
$_GET['p'] is een opgevraagde pagina die correspondeert met een entry in een database (zo niet, dan 404).

Op die manier worden alle pagina's van de site mooi ingepast binnen de templates van het cms en is iedereen blij.

Nu zit ik echter met een probleem: soms worden in submappen programma's geplaatst die juist buiten het cms moeten vallen qua techniek, maar wel dezelfde templates moeten hebben om de 'look en feel' van de site te behouden.

Ik stel me voor dat ik nu ergens een check in moet bouwen die controleert of $_GET['p'] als foldernaam bestaat binnen de filestructuur (met is_dir($_GET['p'])?), maar tot nu toe heb ik dat niet werkend gekregen.

Heeft iemand hier suggesties, bepaalde functies, do's/don'ts? Het gaat meer om ideeen; code lukt wel :)

Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • Morax
  • Registratie: Mei 2002
  • Laatst online: 16-06 22:20
Even los van je probleem zou ik je aan willen raden om eens wat te lezen over SQL injection ;)

De opzet van je query op deze manier is totaal niet veilig!

What do you mean I have no life? I am a gamer, I got millions!


Acties:
  • 0 Henk 'm!

  • sky-
  • Registratie: November 2005
  • Niet online

sky-

qn ella 👌

jep !

stel iemand veranderd $_GET['p'] in :

blaat.php;TRUNCATE t_teksten;

zoiets dan, ben je dus alles kwijt in t_teksten, kan je opnieuw beginnen.. (en zo kunnen er nog veel meer commands worden uitgevoerd)

don't be afraid of machines, be afraid of the people who build and train them.


Acties:
  • 0 Henk 'm!

Anoniem: 3431

k8skaaay schreef op woensdag 11 oktober 2006 @ 11:34:
jep !

stel iemand veranderd $_GET['p'] in :

blaat.php;TRUNCATE t_teksten;

zoiets dan, ben je dus alles kwijt in t_teksten, kan je opnieuw beginnen.. (en zo kunnen er nog veel meer commands worden uitgevoerd)
Klopt niet. mysql_query() kan maar 1 sql statement per keer uitvoeren.
PHP:
1
mysql_query("SELECT * FROM t_teksten; TRUNCATE t_teksten")
werkt dus niet. Je kan er wel andere geintjes mee uithalen though ;)

Acties:
  • 0 Henk 'm!

  • skabouter
  • Registratie: Oktober 2000
  • Laatst online: 02-06 13:41

skabouter

Skabouter

Anoniem: 3431 schreef op woensdag 11 oktober 2006 @ 13:45:
[...]

Klopt niet. mysql_query() kan maar 1 sql statement per keer uitvoeren.
PHP:
1
mysql_query("SELECT * FROM t_teksten; TRUNCATE t_teksten")
werkt dus niet. Je kan er wel andere geintjes mee uithalen though ;)
PHP:
1
mysql_query("SELECT * FROM t_teksten, t_gebruikers")
:Y)

[ Dislect ]


Acties:
  • 0 Henk 'm!

Anoniem: 60900

Topicstarter
Okay, de sql-injection opmerkingen zijn noted en daar ga ik wat mee doen.

Maar buiten dat: wat moet ik met die folders doen?

thnx :)

Acties:
  • 0 Henk 'm!

Anoniem: 174951

Ik vind de omschrijving niet echt duidelijk... zou je deze nog iets verder kunnen ophelderen... is het je eigen cms qua code, hoe laad je de templates, wat staat er in de templates (puur html, of ook code)., enz. enz.
Pagina: 1