Ahoj,
řeším takový problémek. I když moc JS nerozumím, zkusil jsem napsat formulář, který je zpracovaný ajaxem. To se povedlo, data se uloží, ale script se nezpracuje. Vím, že se musí refreshnout. Což by se minulo účinkem. Dokázal by mi někdo prosím poradit, jak zprovoznit celý script?
Zde je formulář
<script src="https://code.jquery.com/jquery-3.4.1.js"></script>
<form id="message">
<p id="result"></p>
<input type="text" name="zprava" id="zprava" placeholder="Napište zprávu">
<input type="button" class="btn" id="send" name="send" value="Odeslat">
</form>
<script>
$(document).ready(function(){
$("#send").click(function(){
$.ajax({
//dataType: "json",
type:"POST", // metoda odeslání
url:"/view/online-chat/save-message.php", // umístění odesílacího scriptu
data:$("#message").serialize(), // díky tomuto není nutné definovat pro každou položku var
success:function(d) // úspěšné odeslání
{
$("#result").html(d); // zobrazení informace o odeslání
$("#message")[0].reset(); // vyresetování formuláře
document.getElementById("result").style.display = "block";
}
});
});
});
</script>
Toto je script, který je volaný url v js (save-message.php)
date_default_timezone_set("Europe/Prague");
ini_set('display_errors', 1);
if(empty($_POST['zprava']))
{
echo 'Prazdne';
}
else
{
if(Db::query('INSERT INTO zpravy (zprava, uid) VALUES (?, ?)',
$_POST['zprava'], $_GET['name']))
{
echo 'OK';
}
else
{
echo 'Chyba';
}
}
Jde jen o to aby se save-message.php spustil a zpracoval. Bude tam více hodnot.
Děkuji za případné návrhy