【问题标题】:FETCH num rows with array用数组获取 num 行
【发布时间】:2016-01-04 06:47:29
【问题描述】:

如果电子邮件和密码相同,我正在使用 pdo 获取数据,但它给了我一个错误并且没有获取下面的数据是代码......

if(isset($_POST['submit'])){
  $email      = $_POST['email'];
  $password   = $_POST['password'];
  //Encrypt Password
  $encrypted  = md5($password);

  //Include Database Connection
  require 'assets/_conn.php';
  $result = dbConnect()->prepare("SELECT email, password FROM users WHERE email= :email AND password= :password");
  $result->bindParam(':email', $email);
  $result->bindParam(':password', $encrypted);
  $result->execute();

这是未获取的问题数据 ....

$rows = $result->fetch(PDO::FETCH_NUM);
if(count($rows) > 0) {
    foreach($rows as $row){
       $image  = $row['image'];
       $pic    = array('1.jpg',$image);
    }
}

【问题讨论】:

  • 它给我一个错误什么错误?
  • 未定义变量:查询

标签: php mysql mysqli pdo


【解决方案1】:

PDO::FETCH_NUM

返回结果中返回的以列号为索引的数组 设置,从第 0 列开始

所以不要使用列名,而是使用索引

$image  = $row[2];// your indexing

并且您需要添加 image column in your query 。您的查询将是

$result = dbConnect()->prepare("SELECT email, password, image FROM users WHERE email= :email AND password= :password");

【讨论】:

  • 您需要在查询中添加图片列
【解决方案2】:

为了获取数据,你应该使用$result->fetch(PDO::FETCH_OBJ) 如下所示

如提及@Saty,请将图片列添加到您的查询中。

$rows = $result->fetch(PDO::FETCH_NUM);
$pic = array();
if(count($rows) > 0) {
    /* foreach($rows as $row){
       $image  = $row['image'];
       $pic  = array('1.jpg',$image);
    } */
    while($row=$result->fetch(PDO::FETCH_OBJ)) {
        /*its getting data in line.And its an object*/
        $image  = $row->image;
        $pic[]    = array('1.jpg',$image);
    }
}

我希望这对你有用。

谢谢

【讨论】:

  • 感谢 reniskhunt 但它无法正常工作它无法获取数据错误即将到来是未定义变量:图片
  • 男人不可能只检查你的代码。你在 while 循环之外使用了 $pic 变量吗?
  • @StackOverflow 如果你在 f while 循环之外使用了 $pic 变量,那么你应该在 while 循环之前定义变量。
  • 检查此代码 .... $rows = $result->fetch(PDO::FETCH_NUM); if(count($rows) > 0) { while($row=$result->fetch(PDO::FETCH_OBJ)) { $image = $row->image; $pic = array('1.jpg',$image); } } 它在循环中并在循环外打印这个 $pic "; ?>
猜你喜欢
  • 1970-01-01
  • 2017-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多