dongzhong2674 2013-10-09 15:24
浏览 23
已采纳

else语句没有按预期工作[关闭]

Ok, so I made this code:

Acum adaugati note si absente pentru&nbsp;<?php echo $numeleelevuluiales ?>, la materia <?php echo $numelemateriei ?> :
<br />
<?php
if(!isset($_POST['submit13']))
{
    ?>
    Adauga o nota noua:

    <form method="post" action="" name="form666">
    <table border="0" cellspacing="0" cellpadding="0"> 
      <tr>

        <td  width="50">Nota: &nbsp;

        <select name="note">
    <option value="eroare">Alege nota</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    </select>
    </td>
    <td   width="50"> Ziua:&nbsp;
    <select name="ziua">
    <option value="eroare1">Alege ziua</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    </select>

    </td>
    <td   width="50">Luna: &nbsp;
    <select name="luna">
    <option value="eroare2">Alege luna</option>

    <?php
    $lunile = "SELECT id, luni
        FROM luni";
    $qlunile = mysql_query($lunile);

    while($luniletabel = mysql_fetch_array($qlunile))
    {
        echo "<option value='".$luniletabel['id']."' name='luna'>" . $luniletabel['luni'] . "</option>";
    }
     ?>
    </select>

    </td></tr>

      </table> <br />
         <input type="submit" name="submit13" value="&nbsp;Adauga &nbsp;" >
         </form><br />
    <?php

}//sfarsit if
else
{
    if(!isset($_POST['submit333']))
    {
        if($_POST['note'] == 'eroare' || $_POST['ziua'] == 'eroare1' || $_POST['luna'] == 'eroare2' )
        {
            echo "EROARE!!! Nu ati ales toate campurile <br />";
        }
        else
        {
            echo "Ati ales nota&nbsp;" .$_POST['note'].", in ziua&nbsp;" .$_POST['ziua']. ", si luna a " .$_POST['luna']. ".";
            ?><br />
            Daca datele sunt corecte, apasati butonul de mai jos pentru adaugarea in baza de date:


             <form method="post" action="" name="form666">
             <input type="submit" name="submit333" value="&nbsp;Adauga in baza de date&nbsp;" >
                 </form>
            <?php
        }
    }
    else // daca a fost apasat submit 333
    {
        $azi = new DateTime(date("Y-m-d"));
        //
        $data_adaugare = $azi->format("Y-m-d");
        //
        // se adauga cele 2 zile
        //
        $termen = 2; // zile de modificare
        //
        $azi->add(new DateInterval('P2D'));
        //
        $data_expirarii = $azi->format("Y-m-d");

        $materianote = $_SESSION['materienote'];
        $id_note = $_POST['note'];
        $data_nota = $_POST['ziua'];
        $luna_nota = $_POST['luna'];
        echo $id_note;

        mysql_query("INSERT INTO note(id_elev, id_materie, id_note, data_nota, luna_nota, data_adaugare, data_expirare) 
                VALUES ($codul_elevului, $materianote, $id_note, $data_nota, $luna_nota, $data_adaugare, $data_expirarii) ")
                or die("Hopa! Ceva nu merge!");
        echo "Adaugat cu succes!";


    }//sfarsit if isset submit 333

}//sfarsit daca sunt alese toate campurile


}

The problem is here: else // daca a fost apasat submit 333 Nothing in the else works when I press the "submit333" submit button. I tried echoing something in the else statement, but nothing works.

Any ideas? What did I do wrong?

MySql is ok. Thanks everyone for answers!

  • 写回答

1条回答 默认 最新

  • dpg76975 2013-10-09 15:34
    关注

    Your logic is flawed.

    With all the other stuff cut out, your code comes down to this:

    if(!isset($_POST['submit13']))
    {
    }
    else
    {
      if(!isset($_POST['submit333']))
      {
      }
      else
      {
        // here is where you want stuff to happen when $_POST['c'] is set
      }
    }
    

    But if you pressed the submit button submit333, then you will most likely not have pressed the submit button submit13 at the same time, right?

    And because you did not press submit13, your code goes into the first if block, so it does not go into the else branch belonging to that first if, and so your second if is never even executed …

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退