Ajax - PHP - Mysql form-ba insert-nél elakadtam, azt szeretném ha az Ajax kitörölnél minden sikeres elküldésnél az adatmezőt, hogyan (kód, video lent)?
Video
HTML:
<form id="myForm" action="userInfo.php" method="post">
email : <input type="text" id="text" name="email" value="kk" /> <span id="result"></span> <br>
<button id="sub">Save</button>
</form>
<span id="result"></span>
<h2 id="mama"></h2>
jquery:
$("#sub").click( function() {
$.post( $("#myForm").attr("action"),
$("#myForm :input").serializeArray(),
function(info){
$("#result").html(info);
$("#mama").html(info);
});
if ($('#result').length === $('#result:contains("New record created successfully")').length) {
clearInput();
}
});
$("#myForm").submit( function() {
return false;
});
function clearInput() {
$("#myForm :input").each( function() {
$(this).val('');
});
}
PHP:
<?php
include_once('db.php');
if (!empty($_POST["email"])) {
if (filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)) {
$sql = "INSERT INTO emails (email)
VALUES ('$_POST[email]')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
}else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
else {
echo " <span>Email format is required</span>" ;
}
}
else {
echo " <span>Email is needed</span>";
}
?>
tudjátok mi a megoldás?
köszönöm
Az a gond, hogy habár kitörli, csak akkor jön rá, hogy ki kell törölni amikor már másodszorra megyek rá a "submit"-ra
mivel ez esetben törli csak ki:
if ($('#result').length === $('#result:contains("New record created successfully")').length) {
de mivel nem tudja a gép, hogy azzal együtt kellene ezért egy lépéssel le van maradva
hogyan oldjam meg?
Eléggé átláthatatlan így, ide másolva a kód, de ha jól látom, az a probléma, hogy a "$.post"-nál a függvényed, ami beírja a response-t, az akkor fut le, amikor az ajax hívás eredménye visszajött (mivel aszinkron).
Viszont a JavaScript kód azonnal továbbfut és kiértékeli az utána lévő if-edet. Tehát tedd bele azt is a függvénybe.
áááá működik, ezek szerint mégis kiszúrtad
köszönöm! :D
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!