Ich habe ein Formular, wo der Benutzer die URL eingeben, die sie möchten, und fährt mit dem nächsten Schritt fort. Dies geschieht alles ohne Seitenaktualisierung, daher verlasse ich mich auf Ajax, um die Informationen zu senden. Wenn der Benutzer die gewünschte URL übermittelt, kann er den nächsten Teil verwenden. Der Benutzer hat auch die Möglichkeit, zu der URL-Seite zurückzukehren und ihre URL zu ändern. Ich weiß, wie man die URL erfolgreich einfügt, aber ich weiß nicht, wie man den Eintrag mit der neuen URL aktualisiert. Ich habe versucht, diese, aber es funktioniert nicht:Aktualisieren Eintrag basierend auf dem vorherigen Wert
$prevUrl;
$newUrl;
if ((isset($_POST["url"]))
{
$newUrl = $_POST["url"];
if ($prevUrl == "")
{
$db->query("INSERT INTO Articles (`url`) VALUES ('$newUrl')");
$prevUrl = $newUrl;
}
else
{
$db->query("UPDATE Articles SET url = '$newUrl' WHERE url = '$prevUrl'");
$prevUrl = $newUrl;
}
}
Wie kann ich es so machen, dass, wenn der Eintrag aktualisiert wird, wird es aktualisiert, basierend auf, was die vorherige URL war?
Was ist falsch: Wenn ich zurück gehe, um die URL zu aktualisieren, wird die URL nicht mit der neuen URL aktualisiert. Meine WHERE-Klausel wird nicht erfolgreich ausgeführt. Es ist, als ob die Variable $ prevUrl leer ist. Ich denke, da PHP serverseitig ist, welche Variablen bei der Seitenaktualisierung angezeigt werden, sind dies die Variablen und sie können sich nicht ändern. Da $ prevUrl zunächst leer ist, macht die WHERE-Anweisung wahrscheinlich so etwas wie url = "". Ich bin mir nicht sicher, ob das so ist. Es gab keinen Ausnahmefehler oder irgendeine Art von fatalem Fehler.
Können Sie näher erläutern, wie Ihr Code "nicht funktioniert"? Was hast du erwartet und was ist eigentlich passiert? Wenn Sie eine Ausnahme/einen Fehler erhalten haben, geben Sie die Zeile, auf der sie aufgetreten ist, und die Ausnahme-/Fehlerdetails an. Bitte [bearbeiten] Sie diese Details oder wir können Ihnen möglicherweise nicht weiterhelfen. – FrankerZ
@FrankerZ Ich habe gerade die Frage mit diesen Details aktualisiert – user2896120
Ich sehe Tonnen von Tippfehlern: 'es (\ 'url)' (Missing a \ '). '$ db-query (" UPDATE Articles "(Fehlen eines'> 'vor der Abfrage. Wie funktioniert dieser Code überhaupt? Siehe [this] (http://stackoverflow.com/questions/845021/how-to-get- Nützlich-Fehler-Nachrichten-in-PHP) post und aktivieren "error_reporting" und post zurück mit tatsächlichen Fehlern. – FrankerZ