2016-04-15 10 views
-2

Bitte bevor Sie es abmelden sagen Sie mir zuerst, danke. Ich habe diesen Update-Code unter dem funktioniert. Die Header-Antwort wird jedoch nicht geändert, aber sie hat dies eindeutig getan. Ich habe versucht, header('HTTP/1.1 200 OK'); $time = time() - 60; header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT'); kurz vor dem sterben hinzuzufügen(); aber es funktioniert nicht. Ich möchte 200 Status anzeigen, modifizierte Zeit und möglicherweise wurde der Name in den String-Parametern geändert.Warum der Header-Status nicht geändert wurde?

if(isset($_POST['update'])) { 

    $stmt = $pdo->prepare("UPDATE details set name = :name                
          WHERE user_id = {$_SESSION['user_session']}"); 

    $stmt->bindValue(':name', $_POST[ 'name']); 

    $stmt->execute(); 
    echo '<META HTTP-EQUIV="Refresh" Content="0">'; 
    die(); 
} //end of isset update 
+1

Header sollte vor jeder Ausgabe (dh vor Echo) aufgerufen werden, auch Header hat 2. Argument und 3. Argument für diese Aufgabe –

+0

Vielen Dank für Ihre Antwort @Lashane, aber nachdem ich es vor Echo den Statuscode noch nicht geändert. Entschuldigung, ich bin komplett neu dazu. – user999

Antwort

0

304 bedeutet nur, du bist eine Cache-Seite bekommen, weil sich nichts geändert hat, was Sinn macht, da Sie nichts auf die Seite mit der Aussage Update ausgibt. Sie können Ihre Web-Server-Konfiguration für Cache-Einstellungen überprüfen oder einfach eine Zeitstempel-Erfolgsmeldung ausgeben, wenn Sie wirklich eine 200 sehen möchten.

+0

Hallo @Jeff Puckett II zuerst Vielen Dank. Das Problem war ich habe den Namen geändert und es wurde erfolgreich in der Datenbank geändert, aber der Header-Status sagte 304 nicht geändert. Ich bin mir also nicht sicher, warum der Header den Datencode nicht anzeigt. Ich bin mir nicht sicher, ob 200 sein sollte, ich denke, vielleicht sollte 302 sein? Ich will nur in der Kopfzeile die Daten haben sich geändert – user999

+1

Die Datenbank hat sich geändert, aber die HTTP-Antwort des Webservers hat keine Auswirkungen darauf. Wenn Sie dies bestätigen möchten, wiederholen Sie eine Antwort auf der Seite, um die Webseite zu aktualisieren, sodass der Webserver eine neue Seite bereitstellt. Verwechseln Sie keine Webseiten mit Datenbankeinträgen. Die HTTP-Antwort hat keinen Einfluss auf den Datenbankstatus. –

+0

Vielen Dank @Jeff Puckett II – user999

Verwandte Themen