![](/img/trans.png)
[英]Select * from table_name where column_nameِ = 'value'
[英]Select column FROM table_name WHERE username=$_SESSION['username'] not working
我試圖從表用戶中取出url並將其插入到當前登錄用戶的表圖像的url中。此代碼無法在圖像表中插入url 。
$uploaduser = $_SESSION["username"];
$selectuser = mysqli_query("SELECT * FROM users WHERE username=$uploaduser",$db1);
$row = mysqli_fetch_array($selectuser);
$pic = $row['url'];
$sql = "INSERT INTO images (image1, image_text1, uploaduser, url, date) VALUES ('$image1', '$image_text1' , '$uploaduser','$pic','$date')";
mysqli_query($db1, $sql);
第一個參數應該是鏈接( $db1
)。 然后,除非用戶名是數字數據類型,否則您應該使用單引號將值括起來。
嘗試這個 :
$selectuser = mysqli_query($db1, "SELECT * FROM users WHERE username='$uploaduser'");
重要提示:您應該查看如何防止 PHP 中的 SQL 注入? 以保護您的查詢。
無論如何,您應該使用准備好的語句,
$selectuser = mysqli_query("SELECT * FROM users WHERE username=$uploaduser",$db1);
你這里有錯誤。 mysqli_query
期望參數 1 是連接變量,參數 2 作為查詢字符串,相反,您已將第二個參數作為連接變量傳遞,第一個參數作為查詢字符串傳遞。
還要嘗試連接變量而不是直接將變量傳遞到查詢字符串中。
代替
$sql = "INSERT INTO images (image1, image_text1, uploaduser, url, date) VALUES ('$image1', '$image_text1' , '$uploaduser','$pic','$date')";
嘗試
$sql = "INSERT INTO images (image1, image_text1, uploaduser, url, date) VALUES ('".$image1."', '".$image_text1."' , '".$uploaduser."','".$pic."','".$date."')";
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.