将PHP数组作为HTML回应?

时间:2013-10-30 08:03:25

标签: php html mysql arrays

好吧,所以我真的花了一整天努力实现这一目标并且无处可去。 我正在创建一个flipbook(使用turn.js)。 我有一个存储在MySQL数据库中的名字和死因。 我想在每页上打印5个名字及其死因。 要在turn.js中添加页面,我所要做的就是添加一个

所以我将死亡值的名称和原因加载到数组中,然后使用数组变量回显整个div。

我真的很难将其转化为代码。 目前我已经设法将其打印到单独的页面上,但是如何让它在页面上仅打印5,然后创建一个新页面(直到没有其他名称)

这是我到目前为止所拥有的。

<?php   
$dbc = mysql_connect('localhost', 'xxxx', 'xxxxxxx');
if (!$dbc) {
die('Not Connected: ' . mysql_error());
}

$db_selected = mysql_select_db("xxxxxx", $dbc);
if (!$db_selected)
{
die ("Can't Connect : " . mysql_error);
}
$query = "SELECT * FROM TABLE";
$result = mysql_query($query);

$victim = array();
$cod = array();
$count = 0;
while ($row = mysql_fetch_assoc($result)) {       
    $victim['$count'] = $row['Victim'];
    $cod['$count'] = $row['COD'];               
    $count++;   
}
?>
<div id="deathnote">
<div style="background-image:url(images/coverpage.jpg);"></div>
<div style="background-image:url(images/page1.jpg);"></div>
<div style="background-image:url(images/page2.jpg);"></div>
<div style="background-image:url(images/page3.jpg);"></div>
<div style="background-image:url(images/page4.jpg);"></div>
<div style="background-image:url(images/page5.jpg);"></div> 
<?php
for ($x=0; $x=$count; $x++) {
echo "<div style='background-image:url(images/page5.jpg);'></div><div class='content'><div class='name'>" . $victim['$x'] . "</div><div class='cod'>" . $cod['$x'] . "</div></div></div>";
}
?>  

任何帮助都将非常感激。 在此先感谢,伙计们:)

4 个答案:

答案 0 :(得分:0)

看一下$ _GET变量http://php.net/manual/de/reserved.variables.get.php,您可以在网址中设置变量http://lol.de/?form=1&to=5

$from = $_GET['from'];
$to = $_GET['to'];

if(!is_numeric($from) || !is_numeric($to)) die('SQL Injection');

$count = $to - $from;
$query = "SELECT * FROM TABLE LIMIT ".$from-",".$count;

然后创建一个动态链接,在其中添加5到$ from和$ to。

未经测试,只是一个想法。

答案 1 :(得分:0)

检查代码的最后两行,例如:

for ($x=0; $x=$count; $x++) {
echo "<div style='background-image:url(images/page5.jpg);'></div><div class='content'><div class='name'>" . $victim['$x'] . "</div><div class='cod'>" . $cod['$x'] . "</div></div></div>";

将它们更改为:

   $onPage = 5;
    $currentPage = 1;

for ($x=0; $x=$count; $x++) {

        if (($x % $onPage) == 0)
        {
            echo "<div style='background-image:url(images/page" . $currentPage . "jpg);'></div>";
            $currentPage++;
        }

            echo "<div class='content'>"
            . "<div class='name'>" . $victim['$x'] . "</div>"
            . "<div class='cod'>" . $cod['$x'] . "</div>"
            . "</div>";

}

您可以使用“模数”运算符 - %来实现所需的结果。

答案 2 :(得分:0)

尝试以下代码。

$recordPerPage = 5;
<?php
for ($x=1; $x<=$count; $x++) {
  if($x <= $recordPerPage ) {
echo "<div style='background-image:url(images/page".$x.".jpg);'></div><div class='content'><div class='name'>" . $victim['$x'] . "</div><div class='cod'>" . $cod['$x'] . "</div></div></div>";
     }
$x = $recordPerPage;
$recordPerPage += $recordPerPage;
}
?>  

希望这会对你有所帮助!

干杯!

答案 3 :(得分:0)

这可能会对你有所帮助。

<?php
$recordPerPageCount = 5;
$pageCount = 1;
for ($x=0; $x<$count; $x++) { 
  if($x % $recordPerPageCount == 0) { 
     //This block will execute each time after diplaying five records in a page 
     $pageCount++;
  }

  echo "<div style='background-image:url(images/page".$pageCount.".jpg);'></div><div class='content'><div class='name'>" . $victim['$x'] . "</div><div class='cod'>" . $cod['$x'] . "</div></div></div>";

}
?>