Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从表_name中选择列,其中username=$_会话['username']不工作_Php_Mysql_Sql_Mysqli - Fatal编程技术网

Php 从表_name中选择列,其中username=$_会话['username']不工作

Php 从表_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作为查询字符串传递

我试图从表用户中取出url,并将其插入当前登录用户的表图像的url中。此代码无法在图像表中插入url


你应该使用事先准备好的语句,不管怎么说,从外观上看

$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'");