[英]can't retrieve all rows from a table
在過去的一個小時中,我嘗試了一種方法,以便服務器識別用戶是否已經在我的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行進行比較。
如果要檢索多行,則需要將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'");
由於您是從GET
參數中獲取$kid
,因此您需要先對其進行清理,以防止SQL注入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.