1

大家好,我已经在一些帮助下制作了一个脚本,他们在一个类别中浏览示例:我们有下一个类别 PCgames、All 和 Documents。X 用户正在 PCgames 中搜索 Y 游戏。脚本在 PCgames 中搜索 Y 游戏并显示所有结果。但是当用户单击搜索按钮时,服务器显示下一个错误注意:未定义索引:第 5 行 HTML 代码上 search.php 中的类别

    <form action="search.php" method="POST">
<p><br />
<input name="q" type="hidden" />
<font color="black">Hunt Data:</font>
<input type="text" style="width: 180px" name="qfront" id="name" />
<select name="category">
<option value="0" id="all">All</option>
<option value="1" id="PCgames">PC-Games</option>
<option value="2" id="Console">Console</option>
<option value="3" id="Movies">Movies</option>
<option value="4" id="Music">Music</option>
<option value="5" id="XXX">XXX</option>
<option value="6" id="Windows">Windows</option>
<option value="7" id="Linux">Linux</option>
<option value="8" id="Software">Software</option>
<option value="9" id="Documents">Documents</option>
</select>
<input type="submit" value="Search" />
</p>
</form>

search.php 文件

    <?php
//define each directory here, the index starts with 0 == all and so on.
$categorydir = array('/Category/All/', '/Category/PCGames/', '/Category/Documents/');
//if option selected and its valid number
if($_POST['category'] && ctype_digit($_POST['category'])){    //line 5
 if(array_key_exists($_POST['category'], $categorydir) && is_dir($categorydir[$_POST['category']])){
   $handle = opendir($categorydir[$_POST['category']]);
 }else{
   echo 'target directory not found';
 }
}else{
 //please enter an option
}
?>

注意事项的一些帮助:未定义的索引:第 5 行的 search.php 中的类别?

4

1 回答 1

0
if(isset($_POST['category']) {
 if(ctype_digit($_POST['category']) && isset($categorydir[$_POST['category']])){

 }
}

和你的阵列

 $categorydir = array('/Category/All/', '/Category/PCGames/', '/Category/Documents/');

有 3 个条目,尽管您的表单有 10 只猫。

于 2013-02-25T17:50:06.553 回答