kostenloser Webspace werbefrei: lima-city


Problem mit header("Location: seite")

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mmbikestore

    mmbikestore hat kostenlosen Webspace.

    Hab in meiner tag/index">Index Seite ne Function die, wenn alles überprüft worden is auf header("Location: admin.php") umleitet.
    Nun funktioniert aber die Umleitung nicht.
    Das seltsame daran, auf meinem appache server funktioniert alles einwandfrei, auf lima-city jedoch gar nicht.
    es kommt nicht mal eine fehlermeldung oder ein warning
    k.A. was da los ist
    ausgegeben wird vorher 100%ig nichts, hab ich extra nochmal nachgeprüft
    weiß wer woran das liegen könnte?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Versuchs mal mit ner absoluten URL. Realtive URLs in der location sind immer schlecht...
  4. Autor dieses Themas

    mmbikestore

    mmbikestore hat kostenlosen Webspace.

    edit:

    hmm seltsames problem
    wenn ich ganz normal ne variable zb.:
    $seite = "seite1";
    und dann eben
    header("Location: mmbikestore.lima-city.de/index.php?site=$seite");
    schreib dann gehts seltsamerweise
    wenn ich aber die
    $seite = $_SESSION['seite']; ($_SESSION['seite'] hat genau den selben wert gespeichert)
    und dann
    header("Location: mmbikestore.lima-city.de/index.php?site=$seite");
    funktionierts plötzlich nicht
    was kann da sein?
    Session variable kann ich überall ausgeben, kommt auch immer der richtige wert raus

    Beitrag zuletzt geändert: 21.4.2009 21:26:28 von mmbikestore
  5. Kommt eine Fehlermeldung oder funktioniert es einfach nicht? :P

    Ansonsten stilistisch besser (Manchmal sind die banalsten Dinge, die wichtigsten.. Ich hatte vor kurzem einen Fehler, bei dem die Position des Codes in einer Funktion Ausschlag gebend war. Wär es eine, die über einen Buffer arbeitet... aber nein..es war einfach eine Ausgabe..das war sehr merkwürdig. ^^)

    header('Location: mmbikestore.lima-city.de/index.php?site=' . $seite);
  6. Autor dieses Themas

    mmbikestore

    mmbikestore hat kostenlosen Webspace.

    hab jtz mal doof herumgespielt, und es scheint so als würde meine $_Session['site'] einfach so überschrieben werden :confused:
    kein plan wie oder warum xD aber ich hab einfach mal jede zweite zeile ein echo $_Session['site'] eingebaut und i-wo is die variable dann einfach mal ne andere was aber irgendwie unmöglich ist, weils nirgends überschrieben wird, erst ganz zum schluss der seite xD
    is das rein theoretisch möglich das wenn ich die Session variable ganz oben im skript ausgebe und ganz unten überschreibe, dann oben der überschrieben wert ausgegeben wird?
    sollte doch eigentlich nicht so sein da PHP das skript ja zeilenweise abarbeitet :confused:
  7. Nein, das kann nicht sein.

    Mit was für einem Wert wird es denn überschrieben? Einem von dir oder einem dir unbekannten?

    PS: Hatte auch mal ienen ganz doofen Fehler. Da wurde ein Query zwei Mal ausgeführt. Hab da mehrere Tage dran gesessen und jedes Zeichen einzeln auskommentiert... dann hab ich festgestellt, dass ich einfach ein <img src="" /> hatte weswegen die Seite zwei Mal geladen wurde...
  8. Autor dieses Themas

    mmbikestore

    mmbikestore hat kostenlosen Webspace.

    naja in die Session['site'] variable hab ich die vorherige seite gespeichert
    und irgendwo im oberen bereich wird dann statt der vorheriegen seite die jtz gerade aktive seite drübergeschrieben
    obwohl das erst am ende des skripts passieren sollte
  9. lima-city verwendet wahrscheinlich eine andere Version von PHP als du auf deinen Appache Server. Würde es dir etwas ausmachen den ganzen Code zu zeigen?

    Ich sehe gerade, dass ich das gleiche Problem bei lima-city habe.
    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/koronsan/html/header.php:24) in /home/webpages/lima-city/koronsan/html/doLogin.php on line 37

    Ich habe das Problem jetzt gelöst, indem ich mich für eine Weiterleitung mit dem <meta> Tag entschieden haben.

    Beitrag zuletzt geändert: 23.4.2009 19:44:44 von koronsan
  10. Autor dieses Themas

    mmbikestore

    mmbikestore hat kostenlosen Webspace.

    hab das problem schon gelöst, war ne variable dran schuld ;)
  11. Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/koronsan/html/header.php:24) in /home/webpages/lima-city/koronsan/html/doLogin.php on line 37


    ob_start()

    Vor dem senden von headerinformationen dürfen keine Aussagen erfolgen. Nichteinmal ein Leerzeichen. ob_start() aktiviert das Buffering von PHP, wodurch man dann auch mitten im Code den Header modifizieren kann.
  12. Zu der Sache mit den Variablen: AM besten, Du läßt Dir den Inhalt einer Variablen wirklich durch ein einfaches Php-Skript auf dem Server "live" ausgeben. Dann bist Du wirklich ganz sicher, ob in der Variablen tatsächliche der gewünschte Wert gespeichert ist.
  13. fvagsk schrieb:
    Zu der Sache mit den Variablen: AM besten, Du läßt Dir den Inhalt einer Variablen wirklich durch ein einfaches Php-Skript auf dem Server "live" ausgeben. Dann bist Du wirklich ganz sicher, ob in der Variablen tatsächliche der gewünschte Wert gespeichert ist.


    Wenn Du diesen Thread aufmerksam gelesen hättest, wäre Dir aufgefallen, das der Inhalt der Variablen aus $_SESSION kommt und somit Serverseitig gespeichert ist, wo Manipulationen in den meisten Fällen so gut wie unmöglich sind. Erst bei einer Eingabe von einem Benutzer sollte man auf Schadcode prüfen, alles andere ist Bockmist und kostet nur Rechenzeit und Nerven.
  14. adrians schrieb:
    ob_start()

    Vor dem senden von headerinformationen dürfen keine Aussagen erfolgen. Nichteinmal ein Leerzeichen. ob_start() aktiviert das Buffering von PHP, wodurch man dann auch mitten im Code den Header modifizieren kann.

    Vielen Dank! Das funktioniert ausgezeichnet.
  15. problem zwar schon gelöst, aber warum nimmst du nicht einfach zwei sessions? eine für die aktuell angezeigte seite.. und eine für die vorherige aufgerufene. bei jedem aufruf einer neuen (anderen) seite wird einfach die letzte in die session für die vorherige geschrieben :-)

    Beitrag zuletzt geändert: 5.4.2011 11:02:33 von nick8719
  16. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!