Archief - PHP: Include weigert te werken

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

azkme

Legacy Member
Hey,

kheb mezelf een site gemaakt en ik wil graag werken met een include zodat ik 1 pagina heb met alle menutjes en de inhoud van de verschillende pagina's er dan zo in verwerk.. ik ben zo te werk gegaan:

ik heb op de plaats waar de include moet komen dit gezet
Code:
<?
if ($page) {
 include("$page.php");
} else {
 include("news.php");
}
?>
en men links in het menutje heb ik dan zo gelinkt
Code:
<a href="?page=rules">rules</a>

blijkbaar doet hij dit niet, terwijl ik me toch voorstel dat het vroeger WEL werkte .. hij gaat steeds naar news.php, zelfs al wil ik naar rules.php gaan .. heb een tijdje niet veel met zo'n zaken bezig geweest, dus heb ik misschien één of andere update gemist? :) of wie ziet het foutje?

de website kan gevonden worden op http://ukb.electro-vets.be, alvast bedankt! ;)

dJeez

Legacy Member
Nu heb je een veiligheidsgat gecreëerd dat zo groot is dat er een vrachtwagen doorkan. En zo te zien heeft iemand er ook al misbruik van gemaakt.

Squall-sX-

Legacy Member
Het is zo mogelijk om externe scripts te includen.
https://www.beyondgaming.be
Dees laadt bijvoorbeeld de homepage van telenet in. Zo kun je ook een script schrijven dat alle bestanden op je server ergens anders zet (om mogelijke hardcoded passwords te verkrijgen), of om deze allemaal gewoon te verwijderen en er andere te plaatsen.

Fuji1337

Legacy Member
Kzou et zo doe:

PHP:
<?
switch ($_GET['page']){
case "news": include("inc/news.inc.php"); break;
case "page": include("inc/page.inc.php"); break;
enz
enz
enz
default: include("inc/news.inc.php"); break; 
}
?>

Die inc hoeft niet, maakt het enkel veel overzichtelijker ;)

Squall-sX-

Legacy Member
Ik zou de pagina's gewoon definiëren in een tabel.

id | pagina
1 | news.php
2 | page.php
...

en dan doe je index.php?page=1 enz.
Dan kun je ook nog indien je wilt een kolom login_required toevoegen, en controle toevoegen om te zien of iemand ingelogd is of niet en deze pagina mag zien, of niet.

azkme

Legacy Member
ik ga het snel eens proberen Fuji1337 op jou manier, alvast bedankt :)

edit: ok, met die code is het me gelukt, nu kan je geen page's meer includen ;) thanks :p

Fuji1337

Legacy Member
Your welcome ;) Zodra de site klaar is laat je hem maar eens zien ;)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan