Pagina 1 van 1
php includen in tpl bestanden
Geplaatst: 28 aug 2006, 19:09
door versatile
Support Template
- Wat is het probleem?
Ik wil een pagina includen in een tpl bestand.
Ik weet dit al:
'INCLUDE_RECENT' => $recent,
dan moet je hier:
$recent = 'je tekst neerzetten';
alleen hoe zet je daar je php codes neer zodat page_header.php de codes wel exclude?
als ik er gewoon de php codes inzet zonder de aanhalingstekens, geeft ie allemaal fouten aan.
Wanneer ontstond het probleem? 28 augustus
Adres van je forum: http://2pacparadise.com
Modifications op je forum: een heleboel
Huidige stijl: standaard subsilver (zelf ge-edit)
phpBB versie: 2.0.21
Waar is je forum gehost: rozzohost.nl
Heb je onlangs iets verandert aan je forum? Ja een heleboel
Overige opmerkingen: niks
Geplaatst: 28 aug 2006, 22:25
door abcde
Het templatesysteem van phpBB 2 ondersteunt geen php in .tpl files, dat kan je oplossen door de volgende mod van Cyberalien te instaleren:
http://www.phpbbstyles.com/viewtopic.php?t=356 .
Geplaatst: 29 aug 2006, 08:02
door ElbertF
Let op dat het wat veiligheidsproblemen kan opleveren, omdat de broncode van tpl-bestanden direct in de browser te bekijken zijn. Zorg er dus voor dat de php-code 100% waterdicht is.
Geplaatst: 29 aug 2006, 16:52
door versatile
ik zet geen wachtwoorden of gebruikersnamen in.
en ik heb de config file goed beveiligd in een buitenstaande map met beveiliging
er komt een top 5 van laatste topics in mn tpl te staan met behulp van die mod
bedankt voor de informatie!
Geplaatst: 29 aug 2006, 17:02
door ElbertF
Dan nog kan het onveilig zijn. Slecht geschreven code kan allerlei ingangen creƫren. Dat is niet altijd een probleem, tenzij het voor iedereen zichtbaar is (zoals hier).
Geplaatst: 29 aug 2006, 18:26
door versatile
het enige wat ze in de codes is html codes
en als ze php codes zouden kunnen zien zien ze een include code
maar als dat onveilig is, zouden alle paginas van mn site onveilig zijn.
er zit een htaccess beveiliging op de config file en alle admin files.
waarom is het dan onveilig, zouden ze het kunnen veranderen?

Geplaatst: 29 aug 2006, 18:54
door ElbertF
Ik weet niet precies hoe deze mod werkt, maar in phpBB 3.0 is er de mogelijkheid om PHP direct in het TPL-bestand op te nemen. Code uit bestanden met de extentie .php kun je niet in de browser bekijken omdat deze door een parser worden gehaald. TPL-Bestanden worden dat niet, en dus is de code zichtbaar als je de pagina direct aanroept.
De mogelijkheden om van slechte PHP-code misbruik te maken zijn eindeloos.
Maak maar eens een bestandje aan met deze inhoud:
Als je dit bestand de extentie .php geeft, zie je niets in de browser. Maak je er .tpl van, dan kun je de gehele inhoud bekijken.
Geplaatst: 29 aug 2006, 19:13
door versatile
ik denk dat dese mod wel veilig is.
ik moet namelijk gewoon gebruik maken van css en html:
in plaats van <?php doe ik <!-- PHP -->]
en in plaats van ?> doe ik <!-- ENDPHP -->
ook in de bron van de pagina zie je alleen maar php codes
probeer maar es uit:
http://www.2pacparadise.com
je kan het op elke pagina testen
zo zou het wel veilig moeten zijn
misschien dat versie 3.0 dat nog niet heeft omdat het een beta is

Geplaatst: 29 aug 2006, 19:18
door ElbertF
In welk tpl-bestand heb je dan PHP-code toegevoegd? Ik zie helemaal geen PHP..
Geplaatst: 29 aug 2006, 22:16
door versatile
in overall_header.tpl
de overall_header staat op elke pagina ook op de site
hij verwerkt de php codes dus tog mbv de mod
Geplaatst: 30 aug 2006, 09:31
door svenn
dit staat er

Stel nu dat je dit had geplaatst was het onveilig :
Code: Selecteer alles
<!-- PHP -->
$p = $_GET['p'];
mysql_update("UPDATE phpbb_user ...")
<!-- ENDPHP -->
mss slecht voorbeeld, maar je begrijpt wel dat mensen er zeer makkelijk fouten kunnen invinden...

Geplaatst: 30 aug 2006, 11:50
door versatile
ik snap t goed
als je allerlei variablen in een tpl zet, kan je het makkelijk kraken.
dus ik ga gewoon alleen maar includes gebruiken.
bedankt voor de tip in ieder geval

Geplaatst: 30 aug 2006, 12:14
door ElbertF
Dat is inderdaad wat ik bedoel, een include() is het veiligst.