我有一個按鈕,調用模式框淡入屏幕說,從按鈕發佈的值然後淡出,這工作正常使用jquery,但我也想在同一點擊發送的值從按鈕被髮布到一個PHP函數,運行和模態框仍然淡入和淡出。ajax後jquery onclick
我只有這個讓我的網站知道JS來使用:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
我還是一個菜鳥問題新很抱歉,但將允許AJAX運行,還是隻爲jQuery的?
我想目前的腳本是:(編輯,以正確地形成,基於答覆,但現在什麼也沒有發生的話)
<script>
$('button').click(function()
{
var book_id = $(this).parent().data('id'),
result = "Book #" + book_id + " has been reserved.";
$.ajax
({
url: 'reservebook.php',
data: "book_id="+book_id,
type: 'post',
success: function()
{
$('.modal-box').text(result).fadeIn(700, function()
{
setTimeout(function()
{
$('.modal-box').fadeOut();
}, 2000);
});
}
});
});
</script>
雖然這種模式對話框甚至不發生。
的PHP是,resersebook.php:
<?php
session_start();
$conn = mysql_connect('localhost', 'root', '');
mysql_select_db('library', $conn);
if(isset($_POST['jqbookID']))
{
$bookID = $_POST['jqbookID'];
mysql_query("INSERT INTO borrowing (UserID, BookID, Returned) VALUES ('".$_SESSION['userID']."', '".$bookID."', '3')", $conn);
}
?>
,並徹底,按鈕是:
<div class= "obutton feature2" data-id="<?php echo $bookID;?>"><button>Reserve Book</button></div>
我是新來的這一點,我已經看了幾十個其他這裏有類似的問題,這是我如何獲得我當前的腳本,但它不起作用。
不確定它是否重要,但只有工作模式框的腳本必須在html正文的底部才能工作,不確定是否由於某種原因ajax需要位於頂部,但隨後模態框不起作用,只是一個想法。
** **危險:您正在使用[**的**過時的數據庫API(http://stackoverflow.com/q/12859942/19068),並應使用[現代更換](http://php.net/manual/en/mysqlinfo.api.choosing.php)。你也**易受[SQL注入攻擊](http://bobby-tables.com/)**,現代的API會使[防禦]更容易(http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php)自己從。 – Quentin
啊謝謝你,我一直被告知這個,並且我保持閱讀它的意思並遷移。 – Vereonix
你是否嚴重不使用'mysql_real_escape_string()','htmlspecialchars()'和'filter_input()'?! SQL注入只是一個問題。 '<?php echo $ bookID;?>'也會導致XSS。 '',''''後面''缺少'type':'post''後面的' – mgutt