我在网上看了一个小时左右,我不知道如何解决我的问题。来自$ _SESSION ['用户名']的用户名无法以我尝试过的方式存储在我的数据库中,所以我希望得到一些帮助。我有一个表单,其中包含来自用户的输入,我想要存储用户名的数据。该表填充了正确的数据,除了added_by col,它只获得0作为值。如何使用预准备语句将用户名存储在数据库中?
到目前为止,其他组合已经尝试过没有成功。
if (isset($_POST['submit'])) {
$trackname = $_POST['trackname'];
$year = $_POST['year'];
$trackurl = $_POST['trackurl'];
$stmt = $DB_con->prepare("INSERT INTO tbl_music (trackname, year, url, added_by)
VALUES (:trackname, :year, :url, :added_by)");
$stmt->execute(array(
':trackname' => $trackname,
':year' => $year,
':url' => $trackurl,
':added_by' => $_SESSION['username']
));
例如
$username = $_SESSION['username'];
$stmt->bindParam(':trackname', $trackname);
$stmt->bindParam(':year', $year);
$stmt->bindParam(':url', $trackurl);
$stmt->bindParam(':added_by', $username);
$stmt->execute();
我可以回复来自$ _SESSION ['用户名']的数据,但不能将其存储在数据库中。
答案 0 :(得分:0)
按要求,
我发现这种情况的唯一机会是你的added_by
列是一个int。
你的字符串进入,并转换为int,使其为零。