Kann Fehler hier nicht finden,...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Kann Fehler hier nicht finden,...

    Moinsen,

    in folgendem Code scheint irgendein Fehler zu sein, und ich kapier nicht wo der liegt. Wahrscheinlich isses ganz easy und ich hab ein Mega-Brett vorm Kopf:

    PHP-Code:

    $site 
    $_GET['site'];

    if(!isset(
    $site) OR empty($site))
       {
        
    $site "Home";
       }

       include(
    "head.php");
       include(
    $site.".php");
       include(
    "foot.php"); 
    Führt zu folgendem Error, bei einem Link auf "index.php":

    Warning: include(.php) [function.include]: failed to open stream: No such file or directory in C:\xampp\htdocs\SchreibDochAb\index.php on line 21

    Warning: include() [function.include]: Failed opening '.php' for inclusion (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\SchreibDochAb\index.php on line 21
    Line 21 ist dabei die "include($site.".php");"

    Gebe ich lustigerweise in der if-Abfrage noch ein
    PHP-Code:
    echo $site
    hinzu und öffne dann im Browser die index.php, dann steht da "Home" aber der Error kommt trotzdem.

    Linke ich aber auf index.php?site=Home, dann funktioniert alles wie es soll. :>

    Warum kommt bei der index.php der Error ?

    Ich kapier es nicht.

    Danke schonmal!

    Greetz,
    Aza

  • #2
    Mhm, sehr komisch. Was nicht so logisch ist, ist, dass du überprüfst ob $site existiert, obwohl du der Variable eine Zeile weiter oben etwas zuweist. Diese Zuweisung wirft übrigens einen Notice-Error - falls kein Parameter übergeben wurde - da $_GET['site'] nicht existiert.

    Versuch mal sowas:
    PHP-Code:
    $site 'Home';
    if(isset(
    $_GET['site']) && !empty($_GET['site']))
    {
        
    $site $_GET['site'];

    Mein PHP Blog

    Kommentar


    • #3
      Hrm. Danke dir erstmal. Hab es nun mal so probiert, wie du es vorgeschlagen hast, aber das liefert immernoch das gleiche Ergebnis. :>

      Kommentar


      • #4
        Prüfe alle Parameter, oder stirb!!
        PHP-Code:
        <?php
        error_reporting
        (E_ALL);
        ini_set('display_errors'TRUE); // evtl. hilfreich


        $site 'home';

        $verteiler = array(
                            
        'home' => 'home.php',
                            
        'impressum' => 'impressum.php',
                            
        'bla' => 'bla.php'
                          
        );


        if(isset(
        $_GET['site']) && isset($verteiler[$_GET['site']]))
          
        $site $_GET['site'];

        include 
        "head.php";
        include 
        $verteiler[$site];
        include 
        "foot.php";

        ?>
        Wir werden alle sterben

        Kommentar

        Lädt...
        X