gpt4 book ai didi

php - 'SEL' 是什么意思,如何修复?

转载 作者:行者123 更新时间:2023-11-29 04:52:37 27 4
gpt4 key购买 nike

我的 PHP 代码有问题。在前一页中,用户输入他们的用户名。现在,当他们提交表单时,用户名会发布并回显在当前页面上。

例如,如果教师输入“j.lu”作为用户名,它会在当前页面上发布“j.lu”。

但我想做的是我想在数据库中插入教师的 Id。为此,我设置了一个查询,通过查找用户名来选择教师的 ID。所以 'j.lu' 有一个 TeacherId 'T1' 但它不显示这是插入时的字段。相反,它会在字段中注明“SEL”。

所以我的问题是,“SEL”是什么意思,我该如何解决它,而不是说“SEL”,而是说明教师的 ID,在这个例子中是“T1”。

下面是查询、插入和回显的代码:

$teacherid = "SELECT TeacherId FROM Teacher WHERE (TeacherUsername = '".mysql_real_escape_string($_SESSION['teacherusername'])."')";

echo $_SESSION['teacherusername'];

$sql="INSERT INTO Session (TeacherId)
VALUES
(' ". mysql_real_escape_string( $teacherid ) . "')";

mysql_query($sql);

最佳答案

SEL 是单词 SELECT 的前三个字符,因为您运行的查询是

INSERT INTO Session (TeacherId) VALUES ('SELECT TeacherId FROM Teacher WHERE ...

你需要改变$teacherid的内容:

$teacherid =mysql_real_escape_string($_SESSION['teacherusername']);

// the escape is already done
$sql = "INSERT INTO Session (TeacherId) VALUES ('$teacherid')";

mysql_query($sql);

到目前为止,您有一个名为 Session 的表 ...

编辑

您必须执行第一个查询,而不是按原样使用用户名:

$sql = "SELECT TeacherId FROM Teacher WHERE (TeacherUsername = '" 
. mysql_real_escape_string($_SESSION['teacherusername'])."')";
$rs = mysql_query($sql);
$record = mysql_fetch_array($rs);
$teacherid = $record['TeacherId'];

$sql = "INSERT INTO Session (TeacherId) VALUES ('$teacherid')";
mysql_query($sql);

关于php - 'SEL' 是什么意思,如何修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9947601/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com