[英]Trying to get data from mysql table via php with IN clause (favorites)
這是我的“用戶”表的外觀:
Name Password Favorites
Test Test 1 2 3 4
在我的表格“數據”中
Comment ID
"Test" 2
我希望用戶能夠將評論保存到其收藏夾,因此是第一個表,我將所有收藏夾都保存在一行中,因此表不會太大。 我嘗試通過爆破和IN子句將它們全部收回。 現在看來,它似乎不起作用,我希望這里有人可以給我一些有關如何解決這個問題的有用信息:)
$favoritenstring = ($GET_["favoritenstring"]);
$query = "SELECT * FROM $table_id WHERE ID in ('" . implode("','",$favoritenstring) . "')";
現在,我在上面的查詢行中收到此錯誤:傳遞了無效的參數
改變這個...
從
($GET_["favoritenstring"]);
至
($_GET["favoritenstring"]);
嘗試這個:
$query = "SELECT * FROM $table_id WHERE ID in ( ";
$myVars=explode($favoritenstring);
$numFavs=count(explode(' ', $favoritenstring));
for($i=0;$i<$numFavs;$i++)
{
$query.=$myVars[$i];
if($i<($numFavs-1))
{
$query.=", ";
}
}
$query.=");";
您必須先從字符串中刪除斜杠:
$string = stripslashes($favoritenstring);
$query = "SELECT * FROM $table_id WHERE ID in " .$string;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.