Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] $_Request[] ist leer

Einklappen

Neue Werbung 2019

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

  • prof3
    hat ein Thema erstellt [Erledigt] $_Request[] ist leer.

    [Erledigt] $_Request[] ist leer

    Hallo zusammen,
    habe nun eine kleine PHP-Seite geschrieben, die über die URL Werte an eine zweite php-Seite leiten soll. (Weiterleitung erfolgt über JavaScript)
    Local (XAMPP) funktioniert das alles super.
    Nun habe ich es auf einem SUSE Server und es geht nichts mehr. Die Variablen Werte stehen in der URL drin:

    Code:
    /index.php?folder=../&action=open
    Doch das $_Request[]-Array ist leer.

    An was kann das liegen? Was kann ich ändern, damit es wieder funktioniert?


    Hoffentlich könnt ihr mir weiterhelfen.

    Vielen Dank schon einmal.

  • nikosch
    antwortet
    „Einfach nur“ Server neu aufsetzen. Nunja, ob ich damit zufrieden wäre?

    Einen Kommentar schreiben:


  • prof3
    antwortet
    Problem hatte sich nun aufgelöst. Einfach Daten Sichern. Server neu einrichten ... et voila.

    Habe keine Ahnung an was das gelegen hat - aber nun geht es.

    Merci nochmals für die Tipps!

    Einen Kommentar schreiben:


  • Tiberius
    antwortet
    die phpinfo ausgabe wäre interessant

    Einen Kommentar schreiben:


  • ChrisB
    antwortet
    Zitat von prof3 Beitrag anzeigen
    Kann es sein, dass der Server ÜBERHAUPT keine Daten aus der URL lesen kann, bzw. dass dies komplett gesperrt ist?
    Eher unwahrscheinlich, denn damit wäre PHP zum Betreiben einer dynamischen Webseite so gut wie völlig unbrauchbar.


    Ich weiß nicht, ob wir das jetzt im Thread-Verlauf schon hatten - aber wie sieht's denn aus, wenn du den Request nicht per JavaScript machst, sondern über die Adresszeile ein Script mit GET-Parametern aufrufst, oder ein normales HTML-Formular per POST abschickst - bekommst du dann mit print_r Werte für $_GET/$_POST ausgegeben?

    Einen Kommentar schreiben:


  • prof3
    antwortet
    Code:
    echo $_SERVER['QUERY_STRING'];
    Gibt leider auch nichts aus.

    Cookies funktionieren auch nicht (habe es mit
    PHP-Code:
    setcookie("username","ich",0); 
    probiert)

    Ebensowenig funtionieren POST-Daten.

    Kann es sein, dass der Server ÜBERHAUPT keine Daten aus der URL lesen kann, bzw. dass dies komplett gesperrt ist?

    Einen Kommentar schreiben:


  • Asipak
    antwortet
    Kannst du denn POST-Daten senden oder Cookies setzen?

    Was gibt dir
    Code:
    echo $_SERVER['QUERY_STRING'];
    aus?

    Einen Kommentar schreiben:


  • prof3
    antwortet
    Habe nun noch mal einiges durchprobiert:
    - var_dump($GLOABLS) ergibt immer folgendes:
    Code:
    array(7) { 
    ["GLOBALS"]=> array(7) { 
    ["GLOBALS"]=> 
    *RECURSION* ["HTTP_RAW_POST_DATA"]=>
     string(0) "" ["_POST"]=> 
    array(0) { } ["_GET"]=>
     array(0) { } ["_COOKIE"]=> 
    array(0) { } ["_FILES"]=> 
    array(0) { } ["_REQUEST"]=> 
    array(0) { } } 
    ["HTTP_RAW_POST_DATA"]=> string(0) "" 
    ["_POST"]=> array(0) { } 
    ["_GET"]=> array(0) { } 
    ["_COOKIE"]=> array(0) { } 
    ["_FILES"]=> array(0) { } 
    ["_REQUEST"]=> array(0) { } }
    Also sowohl vor einem Aufruf über JavaScript als auch danach (wenn in der Adresszeile Werte drin stehen).

    - register_long_arrays sind sowohl lokal als auch auf dem Server "off"

    - track_vars habe ich bei den Infos, die phpinfo() ausgespuckt hatte weder lokal noch beim Server gefunden

    - Auf dem Server läuft PHP 5.2.5, lokal (XAMPP) PHP 5.3.1

    Ich habe nun echt keine Ahnung mehr, an was das liegen kann, dass die Werte nicht übergeben werden können.... Ich hoffe, dass ihr mir vielleicht noch weiterhelfen könnt oder einen Tipp habt, wie man das ganze anders machen könnte.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    var_dump ($GLOBALS); zeigt Dir alles, was da ist.

    Einen Kommentar schreiben:


  • Dark Guardian
    antwortet
    Check mal die PHP Version und Konfiguration.

    PHP: Beschreibung der php.ini-Direktiven des Sprachkerns - Manual

    Da kann so einiges am Server anders eingestellt sein als lokal. Wäre zwar ungewöhnlich aber möglich.

    Es kann auch sein das track_vars aus ist und register_long_arrays an ist, oder generell loak PHP 5 und auf dem Server PHP 4 läuft.

    Steht dnen was in $HTTP_GET_VARS?

    Einen Kommentar schreiben:


  • fab
    antwortet
    Überprüfst du das denn direkt am Anfang oder kann es irgendwo in deinem Skript Seiteneffekte geben? Lass doch auch mal $_SERVER['REQUEST_URI'] und $_SERVER['QUERY_STRING'] ausgeben

    Einen Kommentar schreiben:


  • prof3
    antwortet
    Ich überprüfe sowohl $_GET als auch $_POST UND $_REQUEST - alle sind leer.

    PHP-Code:
    print_r($_GET);
    print_r($_POST);
    print_r($_REQUEST); 
    ergibt: "Array ( ) Array ( ) Array ( )"

    Einen Kommentar schreiben:


  • Wolla
    antwortet
    aber auf dem Zielscript hast du in $_GET nichts drin?

    Einen Kommentar schreiben:


  • prof3
    antwortet
    Sorry, stand auf dem Schlauch.
    Also ich habe mittels FireBug das JavaScript durchgebuggt. Hier stehen die richtigen Werte drinnen. Ebenso dann in der Browseradresszeile.

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Sieht dein URL String jetzt so aus?
    jawohl sieht nun wie folgt aus:
    Code:

    index.php?folder=..&action=open

    .

    Zuvor so:
    Code:

    index.php?folder=../&action=open
    Insofern.

    Einen Kommentar schreiben:

Lädt...
X