首先,我是ajax和Java Script的新手。我花了幾天的時間解決了這個問題,但我仍然沒有想到它。我已經閱讀了類似問題的主題,但仍然無法正確理解。所以在這裏;使用ajax提交獲取檢查值
非常簡單我想從三個單選按鈕之一發布選中的值。我得到的雖然是第一個單選按鈕才值..
我已經試過幾件事情,但我剝離下來的代碼,所以它可能是更容易看到問題是:-)
的AJAX
<script type"text="" javascript"="">
$(document).ready(function(){
$("form#submit").submit(function() {
// we want to store the values from the form input box, then send via ajax below
var svar = $('#svar').attr('value');
var date = $('#date').attr('value');
var email = $('#email').attr('value');
$.ajax({
type: "POST",
url: "ajax.php",
data: "svar="+ svar + "&email=" + email + "&date=" + date,
success: function(){
$('form#submit').hide();
//$('form#submit :input').val("");
$('div.success').fadeIn();
}
});
return false;
});
});
</script>
形式
<form id="submit" method="post" name="submit" action="">
<fieldset>
<legend>Dagens spørgsmål: <? echo $row['question'];?></legend>
<br>
<input type="radio" name="svar" id="svar" value="1"><? echo $row['opt1'];?>
<br>
<input type="radio" name="svar" id="svar" value="2"><? echo $row['opt2'];?>
<br>
<input type="radio" name="svar" id="svar" value="3"><? echo $row['opt3'];?>
<br>
<input name="email" id="email" type="hidden" value="<? echo $email ?>" />
<input name="date" id="date" type="hidden" value="<? echo $date ?>" />
<br><br>
<button type="submit" class="button positive"> <img src="img/tick.png" alt=""> Svar på dagens spørgsmål </button>
</fieldset>
</form>
Ajax.php
<?php
include ("dbc.php");
// CLIENT INFORMATION
$email = htmlspecialchars(trim($_POST['email']));
$date = htmlspecialchars(trim($_POST['date']));
$svar = htmlspecialchars(trim($_POST['svar']));
//stuff from answers
mysql_query("INSERT INTO answers
(`email`,`day`,`answer`)
VALUES
('$email','$date','$svar')") or die(mysql_error());
?>
希望一個你,你聰明的傢伙有辦法解決。因爲這件事,我要把我逼瘋
您正在將數據插入數據庫,而不是HTML文檔。您需要使數據庫的數據安全,而不是HTML。不要使用'htmlspecialchars',使用[使用綁定參數](http://bobby-tables.com/)的數據庫插入方法。 (如果稍後將數據從數據庫中提取出來並將其插入到HTML文檔中,那麼**將使用'htmlspecialchars')。 – Quentin