Anzeige:
Ergebnis 1 bis 2 von 2

Thema: PHP-Weiterleitung wird nicht ausgeführt

  1. #1
    Registrierter Benutzer
    Registriert seit
    04.08.2013
    Beiträge
    1

    PHP-Weiterleitung wird nicht ausgeführt

    Hallo liebes Forum,

    ich komme seit Tagen mit folgendem Problem nicht weiter, Google habe ich schon durchforstet.

    PHP-Code:
    <?php

    $db 
    = @new MySQLi('localhost''user''passwort''db');

    if(!
    $_POST['marker']) {

    // [...]

    } else {

        
    $sql $db->prepare('UPDATE 
                    musik 
                 SET 
                    LINK = ?, 
                    NAME = ? 
                 WHERE 
                    PLATZIERUNG = ?'
    );
        
        for(
    $i=1;$i=10;$i++) {
        
    $sql->bind_param('ssi',$_POST['link'$i],$_POST['name'$i], $i);
        
    $sql->execute();
        }
        
        
        
    $sql->close();
        
    header('Location: http://example.org/display.php');
    }
    ?>
    In der If-Abfrage lese ich Einträge aus der Datenbank aus, und erstelle mehrere Eingabefelder die ich mit den ausgelesenen Einträgen fülle. Ich erstelle also quasi ein Bearbeitungsfeld. Diese übermittle ich mit POST und nenne die Variablen nameX, oder linkX, wobei das X für die Platzierung steht. Dann schicke ich die Daten an das gleiche Skript, sende aber einen verstecketen Marker mit, hier $_POST['marker'], damit dann der Teil ausgeführt wird, der die Einträge in der Datenbank aktualisiert.

    Mein Problem ist, dass ich, wenn die Aktualisierung vollständig ausgeführt habe, gerne zu der display.php weiterleiten möchte mittels der header();-Funktion. Was aber passiert wenn ich den Sende-Knopf drücke, ist dass der Browser erst mal lädt, und nach 35 Sekunden eine leere Seite ausgibt, und in der Firefox Entwickler-Konsole einen HTML/1.1 Stauts Code 503 (Service Unavailable) ausgibt. Die Einträge die ich aber mache, werden in der MySQL Datenbank aktualisiert.

    Wenn ich den Teil auskommentiere, der für die Aktualisierung verantwortlich ist, führt er aber die Weiterleitung aus.

    Mittlerweile weiß ich nicht mehr was ich falsch mache und hoffe, dass ihr vielleicht einen Rat wisst.

    Liebe Grüße,
    TheOrangeman

  2. #2
    asuennemann
    Gast
    Hallo,
    also ich würde mal so spontan sagen, dass mindestens ein Fehler im Kopf deiner For-Schleife liegt:
    PHP-Code:
    for( $i=1$i=10$i++ )
    {
        .
        .
        .

    Ich vermute mal du wolltest eine For-Schleife, die von 1 - 10 iteriert.
    Dann müsste es so heißen:
    PHP-Code:
    for( $i=1$i<=10$i++ )
    {
        .
        .
        .


    Vielleicht hilft dir ja auch die error.log deines Webservers weiter.
    Bei Apache unter Linux ( Ubuntu, Suse etc. ) liegt die in aller Regel unter /var/log/apache/error.log

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •