使用PHP_SELF向同一页面发布两次问题...这可能吗?

时间:2010-01-04 14:37:37

标签: php

我再次遇到php的问题...我已经创建了一个包含多个表单的页面,当我测试它时,我已经知道第一个表单已处理(具有正在进行的,完整的和拒绝的)值但是我似乎无法以同样的方式处理第二种形式。可能是什么事?

任何帮助都将不胜感激......对网站的所有用户来说,新年快乐!

   <? 

    if (array_key_exists('complete',$_POST)) {
                echo "Sucess!";
                exit;
                };

    ?>

            <?php   

    $days = range (01, 31);
    $months = range (1, 12);
    $y1 = date("Y")-2;
    $y2 = date("Y");
    $years = range ($y1, $y2);

    if (array_key_exists('caseStatus',$_POST)) {
                    $case = $_POST['case'];

    if ($case == 'complete')
    { 
    echo 'Please set the date on which the case was <b>completed</b>.<p>';
    echo "<form action='" . $_SERVER['PHP_SELF'] . "' method='post'>"; 
    echo '<select name="completeDay">';
    foreach (range(1, 31) as $day) {
        echo '<option value="'.sprintf("%02d", $day).'">'.sprintf("%02d", $day).'</option>';
    }   echo '</select>';
    echo '<select name="completeMon">';
    foreach (range(1, 12) as $month) {
        echo '<option value="'.sprintf("%02d", $month).'">'.sprintf("%02d", $month).'</option>';
    }   echo '</select>';
    echo '<select name="completeYr">';
    foreach ($years as $value) {
        echo '<option value="'.$value.'">'.$value.'</option>';
    }   echo '</select>
    <p>
    <input type="hidden" name="complete" value="1"/> 
    <input name="submit" type="submit" value="Save"/> 
    <input type="button" value="Cancel" onclick="window.location=\'\'"/>
    </form>
    '; 
    exit;
    } 
<form method="POST" action="<?php echo $_SERVER['PHP_SELF'] . '?id=' . intval($client_id); ?>">
    <select name="case" class="rta">
      <option value="<?php echo $row_caseStatus['progress']; ?>" selected="selected"><?php echo $row_caseStatus['progress']; ?></option>
      <option value=""></option>
      <option value="ongoing">ongoing</option>
      <option value="complete">complete</option>
      <option value="reject">reject</option>
      </select>
    <input type="submit" name="caseStatus" id="caseStatus" value="Save" />
                                    <input type="hidden" name="caseStatus" value="1"/> 
    <br />
  </form>

3 个答案:

答案 0 :(得分:0)

如果没有更多细节,很难确切地知道出了什么问题。

你真的看到第二种形式或“成功”这个词吗?

答案 1 :(得分:0)

如果没有更多信息,很难说出问题所在。你可以发布输出的HTML吗?您确定传递给方法属性的其他变量不是问题吗?

事实上,当你在做intval($client_id)时,你实际上是在尝试将字符串或其他非整数更改为整数吗?

另外,请注意,如果您遵守严格的XHTML,则应将表单的方法属性设置为“post”而不是“POST”。

答案 2 :(得分:0)

<?php

    if (array_key_exists('complete',$_POST)) {
                echo "Sucess!";
                exit;
                };

    ?>

一个简单的错误...只需要编辑开始的php标签!