【问题标题】:Converting a formatted DB query from MySQL into MySQLi将格式化的数据库查询从 MySQL 转换为 MySQLi
【发布时间】:2021-07-28 06:47:24
【问题描述】:

我在将格式化的数据库查询从 MySQL 转换为 MySQLi 时遇到问题。在 MySQL 中,以下代码生成了一个格式化列表,每一行形成一个格式化良好的条目,所有这些都列在彼此的下方。三个按钮将触发不同数据集的三个不同数据库查询。在 MySQLi 上,此代码现在生成一个连续的数据流,根本没有任何换行符或分段符。有人可以帮我解决如何恢复格式吗?

我应该补充一点,我是一名新手程序员,对 MySQLi 了解甚少。非常感谢!

<?php

include 'tools/config.php';
include 'tools/opendb.php';

if(isset($_POST['button1'])){

echo "



";

$link = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT title, type, publication, date, pub_desc, link FROM publications WHERE status=\"P\" ORDER BY date DESC";
$result = mysqli_query($link, $query);

while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
echo "

{$row['title']} " .
"

{$row['pub_desc']}
" .
"{$row['publication']}, " .
"{$row['date']}, " .
"{$row['type']}


" ;
}

include 'tools/closedb.php';

}//if isset

if(isset($_POST['button3'])){

echo "



";

$query = "SELECT date, title, location, event FROM speeches ORDER BY date DESC";
$result = mysqli_query($link, $query);

while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
echo "

" . $row['title'] . "
";
echo "

" . $row['event'] . ", " . $row['location'] . "
";
echo "

" . date( "M Y", strtotime($row['date'])) . "
";
echo "
";
}

include 'tools/closedb.php';

}//if isset

if(isset($_POST['button4'])){

echo "



";

$query = "SELECT title, type, date, event, location, organizer FROM seminars ORDER BY date DESC";
$result = mysqli_query($link, $query);

while($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
echo "

" . $row['title'] . "
";
echo "

" . $row['event'] . ", " . $row['organizer'] . "
";
echo "

" . $row['location'] . ", " . date( "M Y", strtotime($row['date'])) . "
";
echo "
";
}

include 'tools/closedb.php';

}//if isset

?>

【问题讨论】:

  • 您好,欢迎来到 StackOverflow!您能否指定此脚本在什么环境中执行(例如,在浏览器中、在控制台中以及在哪个环境中......)?
  • 谢谢!该脚本是 WordPress 网站的一部分,并使用 PHP 插件在页面中运行。在我不得不过渡到 MySQLi 之前,它运行良好。我目前正在 Safari 中对其进行测试。

标签: php mysql mysqli


【解决方案1】:

由于输出显示在网络浏览器中,我假设您 echoing 的文档是 HTML 格式的。
因此,您是否尝试将 echos 中的新行替换为 &lt;br&gt;

【讨论】:

    猜你喜欢
    • 2013-09-04
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    • 2019-11-09
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 2018-05-27
    相关资源
    最近更新 更多