Php mysqli_查询、mysqli_获取_数组和while循环
我是新来的PHP,我正试图建立一个网站使用PHP。我有测试结果的localhost,我已经在网站上安装了phpmyadmin 我现在要做的是从数据库“门户”中列出表“property”的内容,并用结果填充一个表 我正在使用Php mysqli_查询、mysqli_获取_数组和while循环,php,mysql,Php,Mysql,我是新来的PHP,我正试图建立一个网站使用PHP。我有测试结果的localhost,我已经在网站上安装了phpmyadmin 我现在要做的是从数据库“门户”中列出表“property”的内容,并用结果填充一个表 我正在使用mysqli\u查询,mysqli\u获取数组和while循环。我得到以下错误: 警告:mysqli_fetch_array()要求参数1为mysqli_结果, C:\xampp\htdocs\falcon\portal\forms\edit listing.php中给出的布尔
mysqli\u查询
,mysqli\u获取数组
和while循环。我得到以下错误:
警告:mysqli_fetch_array()要求参数1为mysqli_结果,
C:\xampp\htdocs\falcon\portal\forms\edit listing.php中给出的布尔值
第15行
session_start();
需要\u once“连接\u到\u mysql.php”;//我存储用户名和密码以访问我的数据库。
$sqlCommand=“从门户选择*属性”;//dbname:portal-table:propery
$query=mysqli\u query($myConnection,$sqlCommand);
$Displayproperty='';
while($row=mysqli\u fetch\u数组($query))
$id=$row[“pid”];
$title=$row[“ptitle”];
$area=$row[“parea”];
$city=$row[“pcity”];
$Displayproperty.='
' . $身份证。”
' . $头衔。”
' . $区域。”
' . $城市。”
';
问题是SQL语句中存在语法错误,导致mysqli\u query()
返回false
SELECT*property FROM portal
不是有效的SQL
您应该始终进行检查,以确保mysqli_查询返回一个具有以下结构的有效结果:
$result = mysqli_query($myConnection, $sqlCommand);
if(! $result) {
die("SQL Error: " . mysqli_error($myConnection));
}
// use result here.....
您的SQL语句
SELECT * property FROM portal
sql不正确,因此无法执行查询。尝试删除单词属性
,以获得一些结果 应该是
$sqlCommand = "SELECT * FROM portal.property"; /* Database_Name.Table_Name */
或者干脆用
$sqlCommand = "SELECT * FROM property";
将您的查询替换为此。请确保您之前已添加此行
$db = mysql_select_db('portal');
$sqlCommand = "SELECT * FROM property";
你的问题是错误的,所以
$query = mysqli_query($myConnection, $sqlCommand);
$query为false。这就是为什么,你会犯错误
正确的SQL查询是:
SELECT * FROM portal.property
如果需要指定数据库名称。
此外,在执行之前:
while ($row = mysqli_fetch_array($query))
您应该检查$query是否存在
if(!empty($query) {
while ($row = mysqli_fetch_array($query)) {
...
您需要首先使用以下方式连接到DB portal:
$myConnection = new mysqli("localhost", "user", "password", "database");
然后运行:
$mysqli->query("SELECT * FROM property"); // This will run the query on portal database.
如果要简单地查询门户的属性表,可以使用:
$mysqli->query("SELECT * FROM portal.property");
或
您的意思是
portal.property
:-Ptable数据库“portal”中的“property”。。不是这样吗around@RocketHazmat哈哈,这让我很困惑,谢谢。错误已消失,但我没有显示任何数据。很好。查询完成后,立即键入此行并检查得到的行数。echo$totalRows=mysql\u num\u rows($query);此外,while($row=mysqli\u fetch\u数组($query))之后也没有花括号。它应该是while($row=mysqli_fetch_array($query)){然后在表标记“;}之后结束它。我得到一个错误“mysql_num_rows()期望参数1是中给定的资源、对象”。我添加了花括号。
$mysqli->query("SELECT * FROM portal.property");
mysqli_query("SELECT * FROM portal.property");