我已经尝试过去一小时为服务器确定用户是否已在MySQL数据库中拥有类似行的方法
你的任何人都可以帮助我......
这是我现在完成的代码
$nummer = $_GET['a'];
$klasse = strtoupper ( $_GET['b'] );
$kid = $nummer . '.' . $klasse;
$result = $db->query("SELECT kid FROM Kcode WHERE sid='".$_SESSION['id']."'");
$resa = $result->fetch();
$b = strtoupper ( $resa['kid'] );
$a = $kid
$c = $_SESSION['id'];
if ($a !== $b){
echo "insert";
} else {
echo "already exists";
}
可以更深入地解释不同的get命令是什么:
$_GET['a']
=从上一页检索到的字母$_GET['b']
=从上一页检索到的数字"小子"我想选择的是我的Kcode表中的一行,问题是有几个孩子我想要与$a
进行比较...但是当我尝试这种方式时它只检索最后创建的
你的时间
编辑:
正如评论中所述,我想将$kid
与名为kid WHEN sid=$_SESSION['id']
的mysql行进行比较。
答案 0 :(得分:0)
如果要检索多行,则需要将fetch
置于循环中:
$exists = false;
while($resa = $result->fetch()) {
$b = strtoupper ( $resa['kid'] );
$a = $kid
$c = $_SESSION['id'];
if ($a !== $b){
//echo "insert";
} else {
$exists = true;
//echo "already exists";
}
}
if($exists){
{
echo "already exists";
} else {
echo "insert";
}
这是你想要做的吗?
现在,如果您要做的只是查看是否存在行,则应修改查询:
$result = $db->query("SELECT kid FROM Kcode WHERE sid='".$_SESSION['id']."'
AND kid='$kid'");
由于您从$kid
参数中获取GET
,因此需要先清理它,以防止SQL注入。