-1

我正在尝试创建一个下拉列表,限制每页显示的图像数量并允许用户决定显示多少图像,默认情况下我设置了 5 我试图搜索我没有设法找到的网络这里有一个解决方案是我尝试过的代码

<form action="image_search.php" name="formSize" method="post">  
   <span id="PageSize" style="color:Gray;">Page Size:</span>
   <select name="pagesize">
    <option selected="selected" value="5">5</option>
    <option value="20">20</option>
    <option value="50">50</option>
    <option value="100">100</option>
   </select>&nbsp;
  <span id="Title" style="color:Gray;"></span>
</form>
<?php
    include_once("includes/images.php");
    $xml = simplexml_load_file("xml/images.xml"); //load the images
     $page = 0;
       if (isset($_POST['formSize']))
       {
             $varSize = $_POST['pagesize'];
        }
$MAXELEMENTSPERPAGE = $varSize; //change this value to display how many elements per page you wish people to see
 $maxPage = count($xml)/$MAXELEMENTSPERPAGE;

if(isset($_GET['page']))
   {
     $page = $_GET['page'];   //if page is specif
     }
?>

如果我删除 $varSize 并将其替换为它可以工作的数字,但我得到这个错误 Undefined variable: varSize

4

2 回答 2

1

在用户 POST 到页面之前,varSize 必须有一个值。所以在你的 if 语句之外定义 varSize 。然后,如果用户更改它,它将更改。

$varSize = 5;
if (isset($_POST['formSize'])){
    $varSize = $_POST['pagesize'];
}
$MAXELEMENTSPERPAGE = $varSize;
于 2013-03-01T22:11:49.670 回答
0

我收到此错误未定义变量:varSize

因为它是未定义的。只需定义它!

$varSize = isset($_POST['pagesize']) ? intval($_POST['pagesize']) : 5;
于 2013-03-01T22:13:19.253 回答