Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php else语句未按预期工作_Php_Mysql_Forms_If Statement - Fatal编程技术网

Php else语句未按预期工作

Php else语句未按预期工作,php,mysql,forms,if-statement,Php,Mysql,Forms,If Statement,好的,我做了以下代码: 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

好的,我做了以下代码:

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


}
问题就在这里:else//daca fost apasat submit 333 当我按下submit333 submit按钮时,其他中的任何内容都不起作用。 我试着在else语句中重复一些东西,但没有任何效果

有什么想法吗?我做错了什么

MySql还可以。谢谢大家的回答

你的逻辑有缺陷

删除所有其他内容后,您的代码可以归结为:

if(!isset($_POST['submit13']))
{
}
else
{
  if(!isset($_POST['submit333']))
  {
  }
  else
  {
    // here is where you want stuff to happen when $_POST['c'] is set
  }
}
但是如果您按下提交按钮submit333,那么您很可能不会同时按下提交按钮submit13,对吗


因为您没有按submit13,所以代码进入第一个if块,因此它不会进入属于第一个if的else分支,因此您的第二个if甚至从未执行过…

听说过称为loop的东西吗?您做错了什么。。。要回答很多问题。。。查找:输入值消毒;为什么不在2013年使用mysql_*s函数;什么时候我真的需要一个html表;。。。仅举几个例子……我想让投反对票的人说明他们为什么这么做。问题太多了吗?每个项目的问题是否有限制?或者,我没有表现出我在这个代码上工作过?谢谢Acelasi Eu:代码风格使得阅读代码和提供建议变得非常困难,而且您对现代概念缺乏一般性的理解。另一方面,用外语调试代码/变量/注释并不容易。这是因为免责声明。它给人一种傲慢的感觉,通常愿意帮忙的人都不喜欢它。不要发表这样的免责声明或准备获得否决票。至于您的答案:您在else部分中的查询失败了,但是您没有看到它,因为您可能已经禁用了错误报告。因此,回声不起作用。将回音放在查询之前,看看它是否打印出我现在开始理解的内容。我不知道为什么这里的每个人都希望你是一个专业程序员。我是个乞丐。我尽我所能帮助任何人,并期望得到回报。我并不完美。谢谢你的回复@AcelasiEu你缺乏基本的逻辑知识,与编程无关。@afarazit这是4个月前的事了……从那时起,我学习了zend framework,相处得很好;我们都是从这个开始的,;和平与爱!