0

我创建了以下内容,但是它没有正确显示数据,我希望数据库中的每行数据都有一个新的 div。

<?php
include_once '\inc\header.php';

$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: ". mysql_error());

mysql_select_db($db_database)
or die ("Unable to select database: " . mysql_error());

$query = "select * from deal";
$result = mysql_query($query);

if (!$result) die ("Database access failed: " . mysql_error());
?>

<body class="metrouicss" onload="prettyPrint()" style="zoom: 1;">
<div id="container">

<?php
foreach($result as $tile)
    {?>
        <div class="item tile double bg-color-red">
                <?php echo $tile['name']?>
        </div>
    <?php }?>
</div>


<?php 
mysql_close ($db_server);
?>

`

4

4 回答 4

3
    <?php
include_once '\inc\header.php';

$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: ". mysql_error());

mysql_select_db($db_database)
or die ("Unable to select database: " . mysql_error());

$query = "select * from deal";
$result = mysql_query($query);

if (!$result) die ("Database access failed: " . mysql_error());
?>

<body class="metrouicss" onload="prettyPrint()" style="zoom: 1;">
<div id="container">

 <?php
while($row = mysql_fetch_array($result))
    {?>
        <div class="item tile double bg-color-red">
                <?php echo $row['name']?>
        </div>
    <?php }?>
</div>


<?php 
mysql_close ($db_server);
?>

尝试一下!

于 2013-07-31T19:01:13.887 回答
0

mysql_query()返回一个结果句柄。它不是一个可以循环的数组,这意味着

foreach($result as $tile) {

是错的。它应该是

while ($tile = mysql_fetch_assoc($result)) {

反而。

于 2013-07-31T19:01:29.123 回答
0

$result = mysql_fetch_array($result);
在下面添加if (!$result) die ("Database access failed: " . mysql_error());

Mysql 查询返回一个 mysql 资源对象。你需要一些额外的功能,比如mysql_fetch_array用它做一些事情。

于 2013-07-31T19:05:18.407 回答
0

我会考虑搬到MySQLior PDO。无论如何,另一种方法(使用你的mysql)是$row = mysql_fetch_assoc($result)在while循环条件内使用。

<?php
include_once '\inc\header.php';

$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: ". mysql_error());

mysql_select_db($db_database)
or die ("Unable to select database: " . mysql_error());

$query = "select * from deal";
$result = mysql_query($query);

if (!$result) die ("Database access failed: " . mysql_error());
?>

<body class="metrouicss" onload="prettyPrint()" style="zoom: 1;">
<div id="container">

<?php
while($row = mysql_fetch_assoc($result))
    {?>
        <div class="item tile double bg-color-red">
                <?php echo $row['name']?>
        </div>
    <?php }?>
</div>


<?php 
mysql_close ($db_server);
?>
于 2013-07-31T19:31:01.583 回答