0

我处于 PHP 入门级,所以我真的不明白该怎么做。

这个网站就像一个短篇小说提交页面

首先我有 search.php 该页面将允许用户使用多个条件搜索故事记录,例如内容包含的内容,所以我有这个:storySearch.php

<table border="1">
    <tr>
       <td>Include:
          <select name="optionContent">
             <option value="Yes">Yes</option>
             <option value="No">No</option>
          </select>
       </td>
       <td>Story content contains: <input type="text" name="contains" /></td>
    </tr> 
    <tr>
       <td>Include:
          <select name="optionNum">
             <option value="Yes">Yes</option>
             <option value="No">No</option>
          </select>
       </td>
       <td> Number of words:<b> from </b> <input type="text" name="minWord" style="width: 25px;"><b> from </b>
          <input type="text" name="maxWord" style="width: 25px;" />
       </td>
    </tr>
</table>
<input type='submit' value='Submit' />

和....提交我删掉了一些代码

问题出在它发布到的页面 doStorySearch.php

如果每个包含选项都是“是”,我需要将其作为我的数据库的搜索条件。if 和 else 语句似乎是这样,但我不知道如何。这就是我的 doStorySearch.php

   <?php
        $checkContent = $_POST['optionContent'];
        $checkNum = $_POST['optionNum'];
        if ($checkContent == 'yes') {
            $content = $_POST['contains'];
            echo $content;
        }
        else if( $checkNum == 'Yes') {
            $NumS = $_POST['minWord'];
            $NumE = $_POST['maxWord'];
            echo $NumS."And". $NumE;
        }

我不明白这部分之后该怎么做。无论是 ifelse 还是 else?任何帮助将不胜感激!提前致谢!

4

1 回答 1

0

确实有一百种方法可以做到。

我会使用布尔值,即使仍有一些重复,它也会避免大部分重复:

$checkContent = $_POST['optionContent'] == 'yes';
$checkNum     = $_POST['optionNum'] == 'yes';

if ($checkContent && $checkNum) {
    // Do both
    }
else if ($checkContent) {
    // only content
    }
else if ($checkNum) {
    // only numbers
    }
else {
    // error checking
    }

这足够清楚吗?布尔值一开始可能并不直观,但一旦理解,它们确实使您的代码清晰易读。

如果您计划使用 SQL,请记住清理您的输入。

于 2013-08-08T08:06:53.887 回答