我嘗試通過單擊我的頁面上的閱讀按鈕來更新我下午的messes狀態。所以我在這個網站上找到了一些解決方案,但它並不適合我。使用onClick更新數據庫
我使用AJAX的HTML按鈕之前:
<script type="text/javascript">
function setRead(){
$.ajax({
type: "POST",
url: "update_pm_status.php",
data: { name: $("select[name='gelesen']").val()},
success:function(msg) {
alert("Data Saved: " + msg);
}
});
}
</script>
按鈕的樣式CSS和使用它自己的JavaScript來切換內容(開/關) ,所以我想通過打開更新狀態消息
<span class="toggleOpen" onclick="setRead()"><input type="hidden" method="post" name="gelesen" value="<?php echo $row['id']; ?>">lesen</span>
所包括的位點是
<?php
ini_set('include_path', 'inc');
require("connect.php");
{
$id = $_POST['id'];
$sql = "UPDATE
PMS
SET
gelesen = 'yes'
WHERE id = '".mysql_real_escape_string($id)."' AND gelesen = 'no'";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
但我總是得到未定義變量'id'的通知。 我如何將這個變量提供給包含的網站?
,因爲我必須要耐心等待8小時,然後我可以回答我編輯自己的帖子:
感謝您的答案,但我仍然得到一個未定義指數的消息:所以變量不postet命名 我update_pm_staus.php IHAVE更新我的腳本是:
<script type="text/javascript">
功能setRead(){$ 阿賈克斯({ 類型: 「POST」, 網址: 「update_pm_status.php」, data:{id:$(this).children(「[name ='gelesen']」)。val()}, 成功:function(msg){ alert(「Data Saved: 「+ msg); } }); }
和update_pm_status.php這樣:
ini_set('include_path', 'inc');
require("connect.php");
$id = $_POST['name'];
$sql = "UPDATE
PMS
SET
gelesen = 'yes'
WHERE id = '".mysql_real_escape_string($id)."' AND gelesen = 'no'";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
我也改變了我的HTML像這樣希望把它的工作。
<span class="toggleOpen" onclick="setRead()" input type="hidden" method="post" name="gelesen" value="<?php echo $row['id']; ?>">lesen</span>
對不起,我upvoted,但後來意識到沒有'select'?將它更新爲'data:{id:$(this).children(「[name ='gelesen']」).val()},'這可以從幾個'read'按鈕中調用 –
謝謝@RobSchmuecker,I做出了改變! –