-1

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

ユーザーがページに投稿する前に、varSize に値が必要です。そのため、if ステートメントの外で varSize を定義します。その後、ユーザーが変更すると変更されます。

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

このエラーが発生します Undefined variable: varSize

未定義だからです。定義するだけ!

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