kostenloser Webspace werbefrei: lima-city


PHP Weiterleitung

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    Hey, ich hab mal eine Frage, ich sitze jetzt seit 2h an diesen Code und irgendwie geht das nicht richtig.
    Die Weiterleitung geht irgendwie nicht. Kann mir jemand sagen, wieso das nicht geht? Ich hab vieles ausprobiert ,aber nix funktioniert, selbst Javascript funktioniert irgendwie nicht.

    <?php
    $passwort = $_POST["passwort"];
    
    if($passwort=="geheim")
       {
       header("Location: http://skateen.lima-city.de/...");
       }
    else if($passwort=="geheim")
       {
       header("Location: http://skateen.lima-city.de/");
       }
    else {
    echo "Dieser Code wurde auf unseren Server nicht Registriert";
    }
    ?>

    Gruß LeyUp

    Gruß LeyUp
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Das es "nicht funktioniert" kann an vielem liegen.
    Gibt es eine Fehlermeldung oder ähnliches? Falls ja, solltest du diese gleich mit posten. Je mehr Informationen du uns zu deinem Problem gibst, desto besser können wir dir helfen.
    Aktuell bleibt nur raten.

    Dein Code ist übrigens unsinn. Du prüfst zweimal darauf, ob das passwort "geheim" ist. Auch könntest du prüfen, was überhaupt in der Variable $passwort letztendlich ankommt, aber wie gesagt: Aktuell kann man nur ins blaue hinein raten.
  4. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.

    adrians schrieb:
    Das es "nicht funktioniert" kann an vielem liegen.
    Gibt es eine Fehlermeldung oder ähnliches? Falls ja, solltest du diese gleich mit posten. Je mehr Informationen du uns zu deinem Problem gibst, desto besser können wir dir helfen.
    Aktuell bleibt nur raten.

    Das kommt als Fehler Meldung
    Warning: Cannot modify header information - headers already sent by (output started at /home/webpages/lima-city/skateen/html/Newpage/log.php:2) in /home/webpages/lima-city/skateen/html/Newpage/log.php on line 16


    Gruß LeyUp

    Beitrag zuletzt geändert: 10.11.2013 1:08:56 von skateen
  5. Mit error_reporting(E_ALL) stellst du alle Warnungen etc an.
    Dann rufst du einfach dein Script auf, sollte es einen Fehler geben ( Beispielsweise, dass bereits Headerinformationen gesendet wurden etc. pp. ) dann sollte am Anfang deiner Seite ( Ganz oben im generierten Quellcode ) eine Fehlermeldung stehen.


    Edit:
    Ah. Glatt richtig geraten. Das liegt daran, dass PHP header informationen nicht mehr senden kann, wenn der Header bereits abgeschickt ist - klingt logisch is aber so ;)


    Das ist leicht behoben. Lies dich einfach bei php.net in die ob_* Befehle ein. ( Anfangen würde ich bei ob_start )
    ( Die Fehlermeldung sagt übrigens nichts anderes als "Wir haben schon content los geschickt deshalb können wir leider nicht mehr die Header infos die Aussagen über den content etc. abgeben ändern. DIe müssen nämlich vorher weg. ;) )

    Beitrag zuletzt geändert: 10.11.2013 1:13:26 von adrians
  6. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    adrians schrieb:
    Lies dich einfach bei php.net in die ob_* Befehle ein. ( Anfangen würde ich bei ob_start )
    Oder du sorgst dafür, dass vor den header-Anweisunen keine Ausgabe erfolgt, nicht einmal ein Zeilenumbruch oder Leerzeichen, dann sparst du dir das Output Buffering. Dazu müsste der PHP-Block nur ganz am Anfang der Datei stehen…
  7. je nach komplexität deiner Seite könnte ein Template sehr sinnvoll sein, dann hättest du einserseits nichts das Problem mit den headern und das ganze wäre wesenltiich überischtlicher.
    Ich meine das ungefähr so:
    <?php
    $title=irgentwas aus der Datenbank oder so
    $news=array('Wir arbeiten jetzt mit templates :)', 'Heute ging die Seite online');
    ?>
    <html>
    <h1><?=$title?></h1>
    <?foreach($news as $index){?>
    <div>
    <?=$index?>
    </div>
    <?}?>
    </html>


    Beitrag zuletzt geändert: 10.11.2013 14:28:30 von unlikus
  8. Autor dieses Themas

    skateen

    skateen hat kostenlosen Webspace.


    adrians schrieb:
    Das ist leicht behoben. Lies dich einfach bei php.net in die ob_* Befehle ein. ( Anfangen würde ich bei ob_start )
    ( Die Fehlermeldung sagt übrigens nichts anderes als "Wir haben schon content los geschickt deshalb können wir leider nicht mehr die Header infos die Aussagen über den content etc. abgeben ändern. DIe müssen nämlich vorher weg. ;) )

    Ich kann mit der Seite nicht viel anfangen.
    Ich verstehe es in Englisch kaum.
    Ich hab es so entnommen!
    Geht nicht.
    <?php
    ob_start();
    $passwort = $_POST["passwort"];
    if($passwort=="geheim")
    {
    header("Location: http://skateen.lima-city.de/2.");
    }
    else if($passwort=="geheim2")
    {
    header("Location: http://skateen.lima-city.de/23");
    }
    else {
    echo "Dieser Code wurde auf unseren Server nicht Registriert";
    }
    ob_end_flush();
    ?>

    Hat jemand so ein Beispiel? Wie es mit
    ob_start();
    aussehen soll?

    Gruß LeyUp

    Beitrag zuletzt geändert: 10.11.2013 22:37:27 von skateen
  9. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Dein Code würde schon so stimmen, aber hier nutzt es nicht, da vor
    ob_start()
    keine Ausgabe erfolgen darf, falls du damit deine
    header()
    -Anweisungen zum Funktionieren bringen magst.
  10. 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!