Php 从表_name中选择列,其中username=$_会话['username']不工作
我试图从表用户中取出url,并将其插入当前登录用户的表图像的url中。此代码无法在图像表中插入urlPhp 从表_name中选择列,其中username=$_会话['username']不工作,php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,我试图从表用户中取出url,并将其插入当前登录用户的表图像的url中。此代码无法在图像表中插入url 你应该使用事先准备好的语句,不管怎么说,从外观上看 $selectuser = mysqli_query("SELECT * FROM users WHERE username=$uploaduser",$db1); 这里有个错误。mysqli_query要求param 1作为连接变量,param 2作为查询字符串,而您将第二个param作为连接变量传递,将第一个param作为查询字符串传递
你应该使用事先准备好的语句,不管怎么说,从外观上看
$selectuser = mysqli_query("SELECT * FROM users WHERE username=$uploaduser",$db1);
这里有个错误。mysqli_query要求param 1作为连接变量,param 2作为查询字符串,而您将第二个param作为连接变量传递,将第一个param作为查询字符串传递
还应尝试连接变量,而不是直接将变量传递到查询字符串中
而不是
$sql = "INSERT INTO images (image1, image_text1, uploaduser, url, date) VALUES ('$image1', '$image_text1' , '$uploaduser','$pic','$date')";
试一试
希望这有帮助。第一个参数应该是链接$db1。 然后,除非用户名是数字数据类型,否则应使用单引号将值括起来 试试这个:
$selectuser = mysqli_query($db1, "SELECT * FROM users WHERE username='$uploaduser'");
重要提示:您应该注意确保查询的安全。这可能重复的情况取决于用户名是varchar字段还是数字这也可以通过正确使用准备好的语句来避免。链接$db1应该是mysqli\u query的第一个参数。@Syscall,当我没有包含“url”列时,该代码起作用。现在,为了测试,我试着放置$pic=$\u SESSION['username'],效果很好。谢谢@Syscall,这对我真的很有帮助!干得好!我试了一整天
$sql = "INSERT INTO images (image1, image_text1, uploaduser, url, date) VALUES ('".$image1."', '".$image_text1."' , '".$uploaduser."','".$pic."','".$date."')";
$selectuser = mysqli_query($db1, "SELECT * FROM users WHERE username='$uploaduser'");