我正在尝试向关系数据库添加一些数据,并希望session_user_id成为该数据库的外键。当用户单击按钮时,我想使用session_user_id和我已发布到页面的其他一些信息创建数据库条目。我的ajax发布到它运行的php网页页面(意味着我的所有脚本都在同一页面上)
我目前正在获得Uncaught ReferenceError: $sess_user_id1 is not defined
。 jquery正在开火。虽然我希望修复未定义的变量,总的来说这似乎不是一个非常直接的方法,并且当我需要的所有变量已经在我的PHP语句中时,它添加了一堆令人困惑的变量。有没有办法在不通过ajax并且必须再次定义变量的情况下触发PHP条目?
这是我的php,它位于与我的JS和HTML在同一页面的标题中:
<?php
$markerid = $_POST["id"];
$name = $_POST["name"];
$type = $_POST["type"];
$point = $_POST["point"];
$lat2 = $_POST["lat"];
$lng2 = $_POST["lng"];
$locationdescription = $_POST["locationdescription"];
$locationsdirections = $_POST["locationdirections"];
session_start();
if (!isset($_SESSION['sess_user_id']) || empty($_SESSION['sess_user_id'])) {
// redirect to your login page
exit();
}
$sess_user_id1 = $_SESSION['sess_user_id'];
if ((isset($_POST['usid'])) && (isset($_POST['usid']))) {
$user_id_follow = strip_tags($_POST['usid']);
echo $user_id_follow;
$query = "INSERT INTO markerfollowing ( userID, markerID, type )
VALUES ('$user_id_follow', '$markerid', '$type');";
$result = mysql_query($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
mysql_close();
}
?>
这是HTML按钮:
<div class="btn pull-right">
<button class="btn btn-large btn-followmarker" type="submit"id="followmarker">Add me to the list</button>
</div>
这是jquery / ajax帖子:
<script/javascript>
$(document).ready(function () {
$("#followmarker").click(function(){
$.ajax({
type: "POST",
url: "", //
data: { usid: <?php echo '$sess_user_id1'; ?>},
success: function(msg){
alert("success");
$("#thanks").html(msg);
},
error: function(){
alert("failure");
}
});
});
});
</script
衷心感谢所有人的帮助。我之前没有使用过关系数据库。
答案 0 :(得分:0)
<?php echo '$sess_user_id1'; ?>
是错的。如果你不想得到
$ sess_user_id1的data: { usid: 123}
123 ,您应该写
data: { usid: <?php echo "$sess_user_id1"; ?>}
在您的brawser中查看您的html源代码。我认为有data: { usid: $sess_user_id1}
,javascript不明白什么是 $ sess_user_id1
这是我现在唯一能看到的问题,但是我不能完全了解你当前的任务。