PHP: Variable ?

baeckerjunge

Erfahrenes Mitglied
Hoi ich arbeite momentan an meiner privaten HP

und habe folgendes Script im Einatz...

PHP:
<?php
$action = $_GET["action"];
if (!isset($action)) { $action = "main"; }
$action = "./include/".$action.".php";
include ($action);
?>

Da ich nun schon zigtausend andere scripts ausprobiert habe für den anderen Inhalt und jede menge nerven gelassen habe *g*,
wollte ich mal fragen inwiefern ich das Tutorial von Psylic umschreiben kann.....
würden bei der Einbindung auch unterordner möglich sein?

Hier der Link:
http://www.tutorials.de/tutorials7279.html

Meine nächste Frage im Anhang wäre dann wo ich includierte Startseite festlege,
also die Variable $go und wie nen Link aussehen würde....

bäckerjunge
 
PHP:
<?php

if (isset($_GET['datei'])) {

include($_GET['dir']."/".$_GET['datei'].".php"); } else {

// Pfad zu deiner Startseite
include("ordner/startseite.php"); }

?>

Wenn du nun die Datei guestbook/main.php includen willst, könnte der Link so aussehen
index.php?dir=guestbook&datei=main

Wenn du die Datei main.php im root-Verzeichnis includen willst, dann halt nur
index.php?datei=main
 
PHP:
<?php
$action = $_GET["action"];
if (!isset($action)) { $action = "main"; }
$action = "./include/".$action.".php";
include ($action);
?>
Reicht doch für Unterordner vollkommen aus! Link dann so machen: ...index.php?action=unterordner/datei
Damit wird dann include/unterordner/datei.php eingebunden!
 
Hey danke !

Nun habe ich aber noch eine weitere Frage.....

Ich setzte nen Weblogscript ein welches mir noch probleme bereitet....
Wenn ich auf Admin login klicke tut sich nix, wie muss ich den link verändern dass der link funktioniert ?

Hier der Link
PHP:
<p class="small" style="text-align: right;"><a href="<?php echo basename($_SERVER["PHP_SELF"]); ?>index.php?action=weblog/weblog?login">Admin login</a>

Und hier hier die Variable für des Baseverzeichnis

PHP:
$url = "http://www.baeckerjunge-online.de/include/weblog/";

Aso die ganze Geschichte findet Ihr unter
http://www.baeckerjunge-online.de/index.php?action=weblog/weblog

Grüsse bäckerjunge
 
Änder deinen Link mal folgendermaßen ab:
PHP:
<p class="small" style="text-align: right;"><a href="<?php echo basename($_SERVER["PHP_SELF"]); ?>?action=weblog/weblog?login">Admin login</a>
 
Also ich ahbe des mal gerade ausprobiert....

Nun wird die Seite nicht gefunen, Ich habe mal unten in die Statuszeile geguckt
und die Url sieht, wenn sie zusammengesetzt wird, jetzt folgendermassen aus:

PHP:
http://wwww.baeckerjunge-online.de/index.phpindex.php?action=weblog/weblog?login

Das index.php ist doppelt gemoppelt.....
Wie änder ich das?
 
Hm jo habe ich, nu kneift es sich wieder mit dem include Script in der index.php

PHP:
<?php
$action = $_GET["action"];
if (!isset($action)) { $action = "main"; }
$action = "./include/".$action.".php";
include ($action);
?>

Wenn man auf Admin login klickt.....
Darum geht es die ganze zeit....
Ich kann mich nicht in den Adminbereich einloggen um Texte zu schreiben.........

PHP:
Warning: main() [function.main]: Unable to access ./include/weblog/weblog?login.php in /home/www/htdocs/baeckerjunge-online.de/index.php on line 37

Warning: main(./include/weblog/weblog?login.php) [function.main]: failed to create stream: No such file or directory in /home/www/htdocs/baeckerjunge-online.de/index.php on line 37

Warning: main() [function.main]: Failed opening './include/weblog/weblog?login.php' for inclusion (include_path='') in /home/www/htdocs/baeckerjunge-online.de/index.php on line 37

Die Fehlermeldung kommt, und zwar setzt sich das "?login" vor das .php

weisst du da weiter?
 
Zuletzt bearbeitet:
Entweder würde ich dein Script mal umstellen, so dass du deinem action in der URL nicht weblog/weblog mitgibst, sondern auch noch die Endung, also weblog/weblog.php (dann kannst du das ?login auch noch dranhängen) oder du erweiterst dein Script um eine zweite Variable $action2, in der du dann den Wert login mitgibst.
Also entweder:
PHP:
<?php 
$action = $_GET["action"]; 
if (!isset($action)) { $action = "include/main.php"; } 
include ($action); 
?>

oder:

PHP:
$action = $_GET["action"];
$action2 = $_GET['action2']; 
if (!isset($action)) {
    $action = "main"; 
} 
$action = "./include/".$action.".php"; 

if ($action2 != '') {
    include ($action.'&'.$action2); 
} else {
    include($action);
}
?>
und dein Link müsste dann so aussehen:
PHP:
<p class="small" style="text-align: right;"><a href="<?php echo basename($_SERVER["PHP_SELF"]); ?>?action=weblog/weblog&action2=login">Admin login</a>
 
Also ich habe jetzt die erste variante genommen und auch die Links
in der index.php angepasst.

mein Link sieht jetzt volgendermassen aus:

PHP:
<a href="<?php echo basename($_SERVER["PHP_SELF"]); ?>?action=include/weblog/weblog.php?login">Admin login</a>

Und die fehlermeldung ist folgende:

PHP:
Warning: main() [function.main]: Unable to access include/weblog/weblog.php?login in /home/www/htdocs/baeckerjunge-online.de/index.php on line 36

Warning: main(include/weblog/weblog.php?login) [function.main]: failed to create stream: No such file or directory in /home/www/htdocs/baeckerjunge-online.de/index.php on line 36

Warning: main() [function.main]: Failed opening 'include/weblog/weblog.php?login' for inclusion (include_path='') in /home/www/htdocs/baeckerjunge-online.de/index.php on line 36

Was ist nun noch falsch?
 
Zurück