2013-03-01 72 views
-1

我想创建一个下拉列表,限制每页显示的图像数量,并允许用户决定要显示多少图片,默认情况下我已设置5我试图搜索净我不设法想出这里的解决方案是我试图下拉列表和php

<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并与多家它的工作原理,但正如我得到这个错误 未定义的变量替换代码:varSize

+0

你如何发布数据,formSize来自哪里? – Musa 2013-03-01 22:13:23

回答

1

在用户进入页面之前,varSize必须有一个值。因此,在你的if语句之外定义varSize。然后,如果用户改变它,它会改变。

$varSize = 5; 
if (isset($_POST['formSize'])){ 
    $varSize = $_POST['pagesize']; 
} 
$MAXELEMENTSPERPAGE = $varSize; 
+0

允许页面正常显示,但下拉列表对每页显示的项目数量有影响 – user2033464 2013-03-01 22:21:03

+0

然后您的if语句是错误的。我所有的代码都给了'$ varSize'一个默认值。如果'isset($ _ POST ['formSize'])'为true,'$ varSize'将被替换为'$ _POST ['pagesize']'。这取决于你确定'$ _POST ['formsize']'是否已经设置好了,'$ _POST ['pagesize']'的值不是5. – Leeish 2013-03-01 22:22:53

+0

对不起,但我还在学习,或者我应该说尝试学习PHP我在网站上找到了下拉列表,我正在尝试将这个想法融入到我的项目中我不确定我是如何找到贴出的项目的价值的,你能建议 – user2033464 2013-03-01 23:08:57

0

我得到这个错误未定义的变量:varSize

因为它是不确定的。只需定义它!

$varSize = isset($_POST['pagesize']) ? intval($_POST['pagesize']) : 5; 
+0

<选项字幕= 5值= 5> 5 <选项字幕= 10值= 10> 10 <选项字幕= 25值= 25> 25 最终的puzzel的一部分 – user2033464 2013-04-24 22:10:35