Archiv verlassen und diese Seite im Standarddesign anzeigen : Inhalt mit include()
Immer wieder sehe ich nun http://www.adresss.de/content/info.php und kann mir irgendwie nicht vorstellen, wie das Ganze in PHP aussieht.
Ich möchte es auf Grund der Suchmaschinen gleich tun, aber keine "ganzen" Urls verwenden wie <?php include('http://www.adresss.de/top.php'); ?>, sondern eben noch dynamischer. Aber wie mach ich soetwas? In Google und mit der SuFu finde ich leider keine Antwort auf genau diese Frage. Tutorials wären auch nicht schlecht :)
Lg,
Hallo1
penizillin 20-08-2007, 14:48 ich verstehe die frage nicht die bohne.
xD okay, nochmal von vorne:
Ich habe früher immer ?x=inhalt benutzt, um meinen Content zu includen. Jetzt möchte ich es aber den Suchmaschinen einfacher machen und es mit content/inhalt.php realisieren. Aber wie zum Teufel funktioniert das?
ministry 20-08-2007, 14:53 Entweder teilst du deinen Content tatsächlich auf die einzelnen Seiten auf - oder du liest dich in mod_rewrite ein.
penizillin 20-08-2007, 14:55 und bevor du "es den suchmaschinen leichter machen" willst, lies erst mal http://www.php-resource.de/forum/showthread.php?s=&threadid=86219
Hallo,
ich versteh die Frage immernoch nicht!
Zur Info:
fängst du einen Pfad mit "/" an, dann startet dein Pfad auf der root Ebene!
auf linux gäbe es dann z.B srv, root, bin, sbin, etc...
unabhängig wo sich die Datei befindet!
mit "./" oder ohne alle Zeichen am Anfang fängt dein dynamischer Pfad an!
Es kommt dann darauf an, wo die zuerstaufgerufene Datei liegt, NICHT jedoch die eingebundene!
Wenn du eine Datei in einem Unterordner einbindest und dann in dieser Datei eine Datei in dem selben Ordner einbinden willst, musst du das wie mit der ersten Datei machen!
Ansonsten weiß ich nicht, was es nocht für Fragen gibt...
jahlives 20-08-2007, 15:03 Ansonsten weiß ich nicht, was es nocht für Fragen gibt...
Jene, die der Topicstarter gestellt hat ;) und die wurde durch ministry schon beantwortet...
modrewrite.de (http://www.modrewrite.de)
ja zur gleichen Zeit wie ich! kann ich ja nicht riechen, dass noch jemand antwortet, wenn ich tippl
So, da mein Host mod_rewrite unterstützt, werde ich wohl das nehmen :D
Ich habe bisher folgendes Script für meinen Content benutzt:
<?php
$data = $_GET['section']."/".$_GET['id'].".php";
if($_GET['id'] == "") {
include("main/home.php");
} else {
if(file_exists($data))
include $data;
else
include("home/content/errors/fehler_content.php");
}
?>
Kann ich einen Link wie http://www.meine-domain.de/index.php?section=main&id=info
nun mit dieser .htaccess im root meines hosts
RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteRule ^/(.*)/(.*)(\.html?)$ index\.php?section=$1&id=$2 [L]
so angeben? http://www.meine-domain.de/main/info
Hoffentlich hab ich's verstanden :p
EDIT: Funzt perfekt =D
Original geschrieben von Hallo1
Ich habe bisher folgendes Script für meinen Content benutzt:
$data = $_GET['section']."/".$_GET['id'].".php";
// ...
if(file_exists($data))
include $data;
bei dieser gelegenheit könntest du auch gleich dein sicherheitskonzept überdenken.
* absteigen im dateisystem ist mit '../' ohne weiteres möglich
* eventuell möglich ist auch durch ein nullbyte im url die endung .php abzuschalten
penizillin 20-08-2007, 22:41 Original geschrieben von Hallo1
So, da mein Host mod_rewrite unterstützt, werde ich wohl das nehmen :D"...weil ich keine lust habe zu verstehen, worum es in dem verlinkten thread geht"?
@3DMAX
Wenn ich aber einen unterordner hinzufüge nicht.
$data = "unterordner/".$_GET['section']."/".$_GET['id'].".php";
@penizilin:
In dem Thread geht genauso darum, die URL umzuwandeln und die $_GET-Variablen anders zu übergeben. Sieht aber meines erachtens ziemlich dämlich aus, daher eben mod_rewrite.
BTW wirst du echt immer netter.
onemorenerd 21-08-2007, 09:48 Original geschrieben von Hallo1
Wenn ich aber einen unterordner hinzufüge nicht.
Doch! :teach:
unterordner/../ oO?
Wie zum Teufel soll ich es dann unterbinden? Oo
jahlives 21-08-2007, 10:34 Wie zum Teufel soll ich es dann unterbinden? Oo
Indem du die $_GET Var prüfst z.B. :rolleyes: und nicht einfach ungeprüft in deinen Code einbindest (Never trust the incoming data)
Gruss
tobi
Nur bin ich ein PHP n00b und hab noch nie was von var gehört. Zeig mir halt an nem Beispiel, wie's geht =/
ghostgambler 21-08-2007, 10:48 echo str_replace("netter", "dümmer", Original geschrieben von Hallo1
BTW wirst du echt immer netter. );
Grundlagen Junge!
IF? Schon mal von gehört?
Switch?
in_array
alles hilft...
jahlives 21-08-2007, 11:03 @ghostgambler. Besser so, sonst fühlt sich Penizilin ev angepinkelt... ;)
echo str_replace(array('wirst','du','netter'),array('werde','ich','dümmer. Weil ich das Manual niemals lesen würde'),'
BTW wirst du echt immer netter. ¨
');
penizillin 21-08-2007, 13:09 mich stört nur, dass die leute immer nur auf (gefühlte) 10 prozent der hinweise eingehen. und dann noch mit ihrem sinn für ästhetik argumentieren, was nur darauf hindeutet, dass man selbst keinerlei ahnung vom thema hat.
was die kinder nicht verstehen wollen, ist, dass die suchmaschinen _nicht_ anhand der internen urls ihre seiten platzieren (wenn überhaupt, geht es um die http antworten der einzelnen seiten). aber nein - was gibt es häßlicheres, als so ein ampersand in der url?... :rolleyes:
|
-
- |