У меня есть div, который имеет PHP-код (он выводит данные из базы данных). Я сделал функцию AJAX для отправки данных на сервер без перезагрузки страницы, вот код:Перезагрузка div на успех AJAX
var url = "loadsave.php";
$('.create_save').submit(function(event) {
if ($('.gss_new_save').val()==""){
event.preventDefault();
} else {
$.ajax({
type: "POST",
url: url,
data: $('form').serialize(),
success: function()
{
}
});
event.preventDefault();
}
});
И это другая часть, которая печатает код. Проблема заключается в том, что он печатает код только при обновлении страницы:
<?php
$connect = new PDO('mysql:host=localhost;dbname=game','root','');
$cmd = $connect->query('SELECT * FROM saves');
$result = $cmd -> fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $res) {
?>
<div class="gss_save cls">
<span class="gss_save_text cls"><?php echo $res['name'];?></span>
<span class="gss_level">lvl: <?php echo $res['level'];?></span>
</div>
<?php
}
?>
EDIT: я добавляю: форма:
<form method="post" action="loadsave.php" class="create_save">
<input type="text" class="gss_new_save" name="name">
<input type="submit" style="display:none">
</form>
и содержание loadsave.php:
<?php
if (isset($_POST['name'])) {
$nombre = $_POST['name'];
}
$connect = new PDO('mysql:host=localhost;dbname=game','root','');
$stm = $connect->query("SELECT * FROM saves WHERE `name` ='$nombre'");
$result = $stm->fetchAll(PDO::FETCH_ASSOC);
if(count($result)==0){
$cmd = $connect->prepare('INSERT INTO saves (name, level) VALUES (:nombre,"1")');
$cmd -> bindParam(":nombre",$nombre);
$cmd -> execute();
}
?>
Это работает как шарм, но я хочу обновить div, чтобы напечатать только что отправленное содержимое, как я могу это достичь?
'... содержание Я просто sent', посланный откуда, сервер или форма вы отправляете * на сервер? – adeneo
Форма это .. – pedritoalfonso
Вы хотите поместить всю форму в DIV? – adeneo