[Variablen] Problem mit Übernahme der Variablen seit Apache V2

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

  • [Variablen] Problem mit Übernahme der Variablen seit Apache V2

    Hallo.


    Ich habe mir einen vServer gemietet auf dem vorher
    Apache 1.(42?) und php4 installiert waren.
    aus technischen gründen musste allerdings ein neues
    image aufgespielt werden, welches jetzt
    Apache 2.0.54 mit ebenfalls php4 enthält.

    Mein Problem ist allerdings jetzt, dass sämtliche
    Variablen nicht mehr klappen.
    bei den meisten projekten ließ sich das lösen, in dem
    ich aus
    PHP-Code:
    <? echo $text; ?>
    ein
    PHP-Code:
    <? echo $_GET["text"]; ?>
    mache.


    Bei dem Projekt für eine Bekannte überschreitet es
    allerdings meine Kompetenzen:


    Die Seite besteht aus dem NAV-Frame und dem
    Main-Frame (und noch ein paar zur Dekoration),
    im NAV-Frame habe ich einzelne <form>s
    untergebracht die eine schaltfläche und
    hidden-inputs enthalten.
    unter target ist angegeben, ob als submenü
    im nav-frame included wird, oder in den Main-frame.
    Wird die Startseite aufgerufen, soll automatisch eine willkommensnachricht (main) bzw. ein Hauptmenü
    (nav) includiert werden, sofern von Hand parameter
    eingegeben wurden eine Fehlermeldung.

    ############ inc/general.php
    PHP-Code:
    <? 
    $version = "2.2.1r1" ;
    $jahr = date("Y");

    $msgbox_main_waehlen = "<span class=\"fsize_11\">
    Sie haben noch nichts Ausgewählt.<br>
    Bitte nutzen Sie die Rechte Navigationsleiste.";

    $msgbox_file2_waehlen = "<span class=\"fsize_11\">
    Bitte wählen Sie eine Unterkategeorie aus.";

    $msgbox_Menue_Incomplete = "<span class=\"fsize_11\">
    Das von Ihnen aufgerufene Menü wurde noch nicht Fertiggestellt.<br>
    Bitte Schauen Sie in wenigen Tagen noch einmal rein.</span>";

    ?>

    ############ nav.php

    PHP-Code:
    <? include ("inc/general.php");

        if         ($file == '')    {$file = "nav00";}
        if         ($send == '')    {$send = "Hauptmenü"; }    
        if         ($send == '>> zum Hauptmenü')    {$send = "Hauptmenü"; }    
        
        if         ($file == 'nav00')    {$h_menue_value = "Hauptmenü:"; }    
        else                     {$h_menue_value = ">> zum Hauptmenü"; }
    ?>
    PHP-Code:

    Ihre Auswahl: <? echo $send; ?>

    <?
        
    $ID = "inc/".$file.".php";
        $ergebnis = is_readable ($ID);
        if         ($ergebnis) {include ($ID);}
        else     {echo $msgbox_Menue_Incomplete;}
    ?>
    ################ navYZ.php (für NAV-Include)
    <link rel="stylesheet" type="text/css" href="../style.css">
    <form name="hauptkategeorie1" method="post" action="nav.php" target="_self">

    oder eben action="main.php" target="main"

    <input name="send" type="submit" value="Ferienwohnung">
    <input name="style" type="hidden" value="text">
    <input name="file" type="hidden" value="nav01">
    </form>

    ################ main.php

    PHP-Code:

    Ihre Auswahl: <? echo $send; ?>

    <?

    if         ($file == '')    {$file = "main00";}
            
    $ID = "inc/".$file.".php";

        $ergebnis = is_readable ($ID);
        if         ($ergebnis) {include ($ID);}
        else     {
        
        If ($send == '') {echo $msgbox_main_waehlen;}
        else             {echo $msgbox_Menue_Incomplete;}

    }
    ?>




    Zu dem Problem:

    $_GET["file"] wird einfach ignoriert.
    Wenn ich die IF-Abfrage ausschalte,
    habe ich das problem, dass zwar wieder auf
    $_GET["file"] reagiert wird, ich kann aber nicht weiter testen da das Hauptmenü nicht mehr geladen wird (nav00.php).

    Jetzt bin ich nur zu Blöde um zu erkennen
    liegt es an einer Fehlerhaften Nutzung der IF-Tags und/oder
    um eine generell Falsche Nutzung der Abrufarten
    PHP-Code:
        $ID "inc/".$file.".php";
        
    $ergebnis is_readable ($ID);
        if         (
    $ergebnis) {include ($ID);} 
    Sollte noch eine Information fehlen, bitte posten oder ICQ [31130 6449]
    Zuletzt geändert von cmail; 10.10.2005, 00:47.

  • #2
    du kannst es auch ohne ändern auf apache v2 zum laufen bringen
    allerdings ist das kein apache 2 problem sondern ein php problem setzt doch mal register_globals auf on dann sollten die scripte auch ohne abändern funtzen

    Kommentar


    • #3
      Gnaa, mach das net. (Schäm dich, Nascar!)
      Es ist einfach ein POST-Formular ... $_POST['file'] statt $_GET['file'].

      Kommentar


      • #4
        wenn man alles können will und nie ne anleitung (howto...) liest.

        was hat es mit register_globals auf on auf sich?


        Da fällt mir noch was auf:

        Ist es egal ob
        $_POST[[COLOR=crimson]"[/COLOR]file[COLOR=crimson]"[/COLOR]
        oder
        $_POST[[COLOR=royalblue]'[/COLOR]file[COLOR=royalblue]'[/COLOR]]
        Zuletzt geändert von cmail; 10.10.2005, 04:13.

        Kommentar


        • #5
          http://php.net/register_globals
          http://php.net/string

          Kommentar

          Lädt...
          X