Значение радиокнопки не вставляется в базу данных. Я использую PHP PDO, JQuery и Ajax
$(document).ready(function() {
$('input[type="submit"]').click(function() {
var gender = $(this).val();
$.ajax({
url: "insert.php",
method: "POST",
data: {
gender: gender
},
success: function(data) {
$('#result').html(data);
}
});
});
});
<title>OnClick Insert Radio Button value into Database using PDO in Jquery Ajax PHP | SoftAOX Tutorial</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<h1> On Click Insert Radio Button Value into Database</h1>
<input type="radio" name="gender" value="Male">Male<br/><br/>
<input type="radio" name="gender" value="Female">Female<br/><br/>
<input type="radio" name="gender" value="Others">Others<br/>
<input type="submit"><br/>
<h3 id="result"></h3>
<br/>
<?php
//Insert Data
$hostname = "localhost";
$username = "root";
$password = "";
$databasename = "tut";
try {
$conn = new PDO("mysql:host=$hostname;dbname=$databasename", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if (isset($_POST["gender"])) {
$query = "INSERT INTO gender(gender) VALUES (:gender)";
$statement = $conn->prepare($query);
$statement->execute(array(
'gender' => $_POST["gender"]
));
$count = $statement->rowCount();
if ($count > 0) {
echo "Data Inserted Successfully..!";
} else {
echo "Data Insertion Failed";
}
}
}
catch (PDOException $error) {
echo $error->getMessage();
}
?>
<script type="text/javascript">
$(document).ready(function() {
$('input[type="submit"]').click(function() {
var gender = $("[name=gender]:checked").val() || "na";
$.ajax({
url: "insert.php",
method: "POST",
data: {
gender: gender
},
success: function(data) {
$('#result').html(data);
}
});
});
});
</script>
var gender = $("[name=gender]:checked").val() || "not given";
был размещен за 5 минут до вашего ответа. Это действительно слишком похоже
var gender = $(this).val();
this
есть ваша кнопка отправить, а не радио.var gender = $(this).val();
это неверно. Кнопка отправки не имеет значения пола. Попробуйvar gender = $("[name=gender]:checked").val() || "not given";
- также сделайте кнопкуtype="button"
- проголосуйте, чтобы закрыть вопрос типа опечатки