- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从数据库中提取数据,我正在使用 PDO 来完成它。
我有以下 PHP 代码但没有成功:
public function CheckIdentity($email, $password) {
$usersArray = [];
$SQL = " SELECT * FROM usuario WHERE email='".$email."' AND password='".$password."' ";
$resultBySQL = $this->dbConnected->query($SQL);
while ($row = $resultBySQL->fetchAll(PDO::FETCH_ASSOC)) {
//$row = $resultBySQL->fetchAll(PDO::FETCH_ASSOC);
$user = new User();
$user->setUsername($row['username']);
$user->setEmail($row['email']);
$user->setPassword($row['password']);
$user->setRole($row['role']);
$user->setPersonalInfo($row['personal_info']);
print_r($user);
array_push($usersArray, $user);
}
}
当我打印它时,我得到以下信息(对于每个属性):
注意: undefined index :email
, etc, etc...
此外,当我只应用 $row = $resultBySQL->fetchAll(PDO::FETCH_ASSOC);
我总是得到这个:
User Object ( [username:User:private] => [email:User:private] => [password:User:private] => [role:User:private] => [personalInfo:User:private] => )
顺便说一下,我已经尝试应用一个代码,但效果不错:
foreach ($resultBySQL as $row) { /* Extract the info */ }
但是现在,对于这个例子......它不起作用。
另一方面,我检查了数据库中的查询和 PDO 连接,它们工作正常。
怎么了?你有什么想法吗?
最佳答案
当你这样做时:
$row = $resultBySQL->fetchAll(PDO::FETCH_ASSOC);
你一次获取所有结果,你得到一个数组的数组。由于您是在 while 条件下进行此调用,因此您在第一次迭代中创建了整个结果的数组,然后代码在第二次迭代中退出,因为没有更多要获取的内容,因为所有结果都已获取在第一次迭代中。
你应该使用:
//notice the 'fetch' in place of 'fetchAll'
while ( $row = $resultBySQL->fetch(PDO::FETCH_ASSOC); )
{
$user = new User();
$user->setUsername($row['username']);
//...
}
每次迭代只获取一行,然后你可以在 while 循环中访问它的内容
或者,您可以一次获取所有行,然后循环遍历结果:
$rows = $resultBySQL->fetchAll(PDO::FETCH_ASSOC);
foreach( $rows as $row )
{
$user = new User();
$user->setUsername($row['username']);
//...
}
关于php - 遇到 PDO 查询问题(通知 : Undefined index),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31634052/
我只是有一个更琐碎的问题。 为什么undefined == undefined 返回true,而undefined >= undefined 为false? undefined 等于 undefine
用PHP 7.2编写套接字服务器。根据Firefox 60中的“网络”选项卡,服务器的一些HTTP响应的第一行随机变为undefined undefined undefined。因此,我尝试记录套接字
在 JavaScript 中这是真的: undefined == undefined 但这是错误的: undefined <= undefined 起初我以为<=运算符包含第一个,但我猜它试图将其转换
在回答这个问题 (Difference between [Object, Object] and Array(2)) 时,我在 JavaScript 数组中遇到了一些我以前不知道的东西(具有讽刺意味的
来自https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/of , Note: thi
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
当我添加 到我的 PrimeFaces Mobile 页面,然后我在服务器日志中收到以下警告 WARNING: JSF1064: Unable to find or serve resource, u
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我正在运行 PHP 脚本并继续收到如下错误: Notice: Undefined variable: my_variable_name in C:\wamp\www\mypath\index.php
我是一名优秀的程序员,十分优秀!