Ich bin ein AJAX-Noob. Ich habe Code geschrieben, um es zu verstehen, aber egal, was ich nicht schaffen konnte. Textarea im Code sollte comment_area
des Kommentars von id=218
aktualisieren, wenn der Benutzer die Schaltfläche "Speichern" drückte. Es gibt wahrscheinlich einen Fehler in meinem AJAX-Code, den ich nicht finden konnte.Einfache Ajax Post funktioniert nicht
Mein AJAX-Skript:
<script type="text/javascript">
$(document).ready(function() {
$("#save").submit(function() {
var text = $('#breaking_news_text').val();
var id = 218,
$.ajax({
type: "POST",
url: "update.php",
data: {comment_area:text , id:id}
success: function() {
alert("sucess");
}
});
});
});
</script>
<div id="b_news">
<form method="post" action="">
<div>
<div>
<textarea id="breaking_news_text" class="breaking_news_text" rows="6" cols="50" placeholder="Add text here..." required></textarea>
</div>
</div>
<div>
<input type="button" id="save" value="Save Changes"/>
</div>
</form>
</div>
Meine update.php Datei
<?php
include("./inc/connect.inc.php");
if(isset($_POST['comment_area']))
{
$update = mysqli_real_escape_string($mysqli, $_POST['comment_area']);
$sql = "update comments set comment_area='$update' Where id='".$_POST['id']."'";
$result = mysqli_query($mysqli, $sql);
}
?>
Sie sind anfällig für [SQL-Injection-Angriffe] (http : //bobby-tables.com). Sie unterbrechen auch nicht die Übermittlung des Formulars, daher wird Ihre Ajax-Anfrage wahrscheinlich gelöscht, wenn die Seite entladen wird. –
Sie müssen auch eine preventDefault() hinzufügen, um sicherzustellen, dass das Formular nicht weitergeht und eine eigene Einreichung durchführt. –
Haben Sie die AJAX-Anfrage/-Antwort in den Browser-Entwicklertools beobachtet? Haben Sie die jQuery-Bibliothek in das Projekt aufgenommen? Werden Fehler gemeldet? Laufen Sie das auf einem Webserver? –