Lukas.: Script verliert Variable

Moin,

Ich habe ein php-Script, das bisher problemlos lief und local auch nach wie vor problemlos läuft. Nur auf meinem Server verliert genau dieses Script nach dem include einer Datei neuerdings eine Variable.

script:

$aktion = $_REQUEST['aktion'];
include ("includescript.php");
echo $_REQUEST['aktion']; // ergibt "test"
echo $aktion; // ergibt ""

includescript:


$aktion = $_REQUEST['aktion'];
// $aktion wird im Verlauf des Scriptes nicht überschrieben, denn: 
echo $aktion; // ergibt "test"
echo $_REQUEST['aktion'];//ergibt "test"

Warum kennt das Hauptscript die Variable $aktion nicht mehr? Und warum nur auf dem Server und nicht lokal?

L.

  1. Tach!

    Warum kennt das Hauptscript die Variable $aktion nicht mehr?

    An PHP selbst liegt es mit Sicherheit nicht.

    Und warum nur im Produktivbetrieb und nicht lokal?

    Das wird dir niemand beantworten können, ohne die Ursache zu finden. Aus den gegebenen Code ist sie aber nicht erkennbar. Du kannst versuchen, Teile des Codes auszukommentieren, bis du den Teil erwischt hast, der die Änderung vornimmt, und dich so an den Verursacher annähern.

    dedlfix.

    1. Du kannst versuchen, Teile des Codes auszukommentieren, bis du den Teil erwischt hast, der die Änderung vornimmt, und dich so an den Verursacher annähern.

      Vorbei. Jetzt läufts auch auf dem Server wieder einwandfrei. Aber vorhin liefs definitiv nicht und ich mußte dem Hauptscript nach dem include erst wieder klar machen, welchen Inhalt $aktion hat/haben soll. Nun wüßte ich nur allzugerne, woher dieser Fehler rührt(e)? Ich befürchte nur, das ist im Nachgang nicht mehr zu ermitteln...

      L.

  2. Warum kennt das Hauptscript die Variable $aktion nicht mehr? Und warum nur im Produktivbetrieb und nicht lokal?

    Ich schau in die Glaskugel und sehe, dass du local mit Windows arbeitest und remote mit Linux.

    Du gehst recht locker mit Buchstaben um, Beispiel:

    include ("includescript.php");

    nennst deine Datei dann aber

    includescript: ohne php

    Vielleicht nimmt Linux die Groß- und Kleinschreibung genau oder Windoof "denkt" sich ein ".php" hinter Dateinamen. Wer weiss …

    Linuchs

    1. Hi,

      Du gehst recht locker mit Buchstaben um, Beispiel:

      include ("includescript.php");

      nennst deine Datei dann aber

      includescript: ohne php

      Hab ich nur hier gemacht, um den relevanten Code zu skizzieren. Zudem, der Code lief in der Vergangenheit ja sowohl lokal als auch online.

      L.

      1. Hast Du vielleicht einen Zwischenzustand auf dem Server gehabt, wo ein Tybbfäler drin war? Und nach erneutem Upload war der weg? Lässt sich jetzt sicherlich nicht mehr nachstellen. Lächele und sei froh, es funktioniert wieder.[1]

        Rolf


        1. Und ich lächelte und war froh - und ein Bug zershredderte die Datenbank :D ↩︎

        1. Hast Du vielleicht einen Zwischenzustand auf dem Server gehabt, wo ein Tybbfäler drin war?

          Nenee, das sicher nicht.

          Und nach erneutem Upload war der weg? Lässt sich jetzt sicherlich nicht mehr nachstellen. Lächele und sei froh, es funktioniert wieder.[^1]

          Na, so richtig kann ich mich nicht darüber freuen, dass ein laufendes System ohne Änderungen hier temporär zickt. Ok, normalerweise macht es das nicht, insofern alles ok. Aber ich werds im Fokus behalten.