尝试根据用户的会话ID和POST插入分数,我已将数据库设置为使用UserID作为外键约束,但不知道如何执行插入查询。
数据库值^^
我在下面的尝试
<?php
include("php/functions.php");
include('connections/conn.php');
$userID = $_SESSION["userID"];
//echo "all good here";
$newsoanxscore = mysqli_real_escape_string($conn, $_POST['socanxscore']);
$insertquery = "INSERT INTO socanxscore(socialanxietyscore)" . "VALUES('$newsoanxscore')";
$result = mysqli_query($conn, $insertquery) or die(mysqli_error($conn));
mysqli_close($conn);
?>
我的插入表格
<form action="insertsoanxietyscore.php" method="post">
Insert your score <input type="number" name="socanxscore" /><br><br>
<input type="submit" />
</form>
答案 0 :(得分:0)
这里有些事情可能会有所帮助。
首先,您没有将用户ID传递到插入查询中。在这种情况下可以写成。
$insertquery = "INSERT INTO socanxscore(socialanxietyscore, UserId) VALUES('$newsoanxscore', '$userID')";
第二,请花点时间探索准备好的查询,以在将最终用户输入传递到数据库表时防止SQL注入。您可能会发现以下有用的资源。
答案 1 :(得分:0)
为此:
<?php
session_start();
include("php/functions.php");
include('connections/conn.php');
$userID = $_SESSION["userID"];
if(isset($_POST["socanxscore"]))
{
$query=INSERT INTO socanxscore(socialanxietyscore) VALUES('$newsoanxscore') WHERE userID=$userID";
$result = mysqli_query($conn, $insertquery) or die(mysqli_error($conn));
}
else
{
ehco "error";
}
mysqli_close($conn);
?>