Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.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/69.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 MySQL查询查找行,但不返回任何内容_Php_Mysql_Sql_Mysqli - Fatal编程技术网

Php MySQL查询查找行,但不返回任何内容

Php MySQL查询查找行,但不返回任何内容,php,mysql,sql,mysqli,Php,Mysql,Sql,Mysqli,我有一个这样创建的2列表(每个用户都有自己的表): $sql=“创建表$user\u name( 驱动程序TINYTEXT不为空, reg_日期时间戳更新当前时间戳时的默认当前时间戳 )"; 我已经(使用phpMyAdmin手动)将数据插入到这样一个表中。reg_日期设置为当前时间,并插入了一些随机字符串(数字,比如01234) 我尝试如下方式访问行: $mysql\u qry2=“从$username中选择*”; $result2=mysqli\u查询($conn,$mysql\u qry2

我有一个这样创建的2列表(每个用户都有自己的表):

$sql=“创建表$user\u name(
驱动程序TINYTEXT不为空,
reg_日期时间戳更新当前时间戳时的默认当前时间戳
)";
我已经(使用phpMyAdmin手动)将数据插入到这样一个表中。reg_日期设置为当前时间,并插入了一些随机字符串(数字,比如01234)

我尝试如下方式访问行:

$mysql\u qry2=“从$username中选择*”;
$result2=mysqli\u查询($conn,$mysql\u qry2);
$ans=“”;
如果(mysqli_num_行($result2)>0){
而($row=mysqli\u fetch\u assoc($result2)){
$ans=$ans.$row[“驱动程序”];
$ans=$ans。”;
$x=$row[“驱动程序”];
回声“$x”;
呼应“a”;
}
$ans=$ans.“asd”;
回音“$ans”;
}否则{
回声“b”;
}

编辑:修复错误的变量名后,“SELECT*”查询返回零行,尽管有3行数据。

您检查了错误变量的计数
mysqli_num_rows($result)>0

    $mysql_qry2 = "SELECT * FROM $username";
    $result2 = mysqli_query($conn, $mysql_qry2);
    $ans = "";

   if ($result2->num_rows > 0) {
      // output data of each row
      while($row = $result2->fetch_assoc()) {
            $ans = $ans . $row["driver"];
            echo "$ans";
            echo "a";
      }
    } else {
      echo "b";
    }  

谢谢在重命名变量时,我确实忘记添加“2”,但主要问题仍然是,尽管表中有3行,我的select*查询仍返回0个结果:(是否检查了数据库连接?使用了错误的变量名。将if(mysqli_num_rows($result)>0)更改为if(mysqli_num_rows($result2)>0)谢谢!我修复了这个问题和echo问题,但问题是它在num_行中显示0行,尽管有3行(我正在与phpMyAdmin进行检查)您的代码看起来正常工作。请检查您在何处设置了
$username
值注意:代码的详细程度明显降低,使代码更易于阅读和审核,并且不容易与过时的
mysql\u查询接口混淆,在该接口中,缺少一个
i
可能会导致问题。例如:
$db=new mysqli(…)
$db->prepare(“…”)程序接口是PHP 4时代的工件,不应该用于新的代码。另外,程序接口没有严格的错误检查和报告,阻碍调试工作。创建一个用户表将为您创建一大堆问题。考虑创建一个带有<代码> UsRi i的表。d
列来区分数据。如果需要,可以通过表分区来优化。