2013-07-25 49 views
-1

我在这里有两个部分,一个是类别部分,另一个是登录部分。我想的是,选择的类别可以在login.php中通过simpe $cat = $_POST['logincategory']; echo $cat;进行访问,但所选择的无线电值是可访问的,并在提交表单的错误显示出来说: Notice: Undefined index: logincategory在提交另一个表单时使用PHP访问值

<section id="categorysection" action="login.php" form="loginform"> 


     <ul style="font-size:20px; font-color:#000;"> 
      <li> <input type="radio" name="logincategory" value="administrator"> Administrator </li> 
      <li> <input type="radio" name="logincategory" value="director"> Director (IQAC) </li> 
      <li> <input type="radio" name="logincategory" value="vicechancellor"> Vice Chancellor </li> 
      <li> <input type="radio" name="logincategory" value="registrar"> Registrar </li> 
      <li> <input type="radio" name="logincategory" value="facutly"> Faculty/Dept. Representative </li> 
     </ul> 
    <button id="logincategorybutton" type="submit" class="login-button" value="&rarr; Login" hidden>Login</button> 

</section> 
<section id="loginsection" > 
    <form method="post" action="login.php" class="login" id="loginform"> 
    <p> 
     <label for="username" style="color:#000; font-weight:700">Username:</label> 
     <input type="text" name="username" id="username" style="width:300px" required placeholder="enter username" maxlength="20"> 
    </p> 

    <p> 
     <label for="password" style="color:#000; font-weight:700">Password:</label> 
     <input type="password" name="password" id="password" style="width:300px" required placeholder="enter password" maxlength="20"> 
    </p> 

    <p class="login-submit"> 
     <input type="hidden" name="form_token" value="<?php echo $form_token; ?>" /> 
     <button type="submit" class="login-button" onclick="document.getElementById('logincategorybutton').click();" value="&rarr; Login">Login</button> 
    </p> 

    <!-- <p class="forgot-password"><a href="index.html">Forgot your password?</a></p>--> 
    </form> 

    <sup style="color:#000; padding-left:150px;"> ** both username and password must be alpha-numeric between 4-20 characters</sup> 
</section> 



</body> 

编辑:带来了单选按钮形式的标签,仍然面临着同样的问题

<section id="categorysection" > 


     <form form="loginform"> 
     <ul style="font-size:20px; font-color:#000;"> 
      <li> <input type="radio" name="logincategory" value="administrator"> Administrator </li> 
      <li> <input type="radio" name="logincategory" value="director"> Director (IQAC) </li> 
      <li> <input type="radio" name="logincategory" value="vicechancellor"> Vice Chancellor </li> 
      <li> <input type="radio" name="logincategory" value="registrar"> Registrar </li> 
      <li> <input type="radio" name="logincategory" value="facutly"> Faculty/Dept. Representative </li> 
     </ul> 
     </form> 
    <button id="logincategorybutton" type="submit" class="login-button" value="&rarr; Login" hidden>Login</button> 

</section> 
+1

@DontVoteMeDown'形式方法=“POST'是这个问题。这个问题是你的表单元素'logincategory'不在''

标签 – AlexP

+0

但我补充形式=”,在登录表单”以前的部分...不会让它成为表格的一部分吗? –

+0

不会发布,只有表单中的输入元素会发布。将当前的''标签移到顶部的'

' – AlexP

回答

0

您需要将内形式的单选按钮标签。另外,您不能使用section标签提交表单。

1

下面是修改后的代码。

所有输入元素都需要封装在表单中。注意我也删除了第二个提交按钮,因为您只需要每个表单一个。

<form method="post" action="login.php" class="login" id="loginform"> 
    <section> 
    <ul style="font-size:20px; font-color:#000;"> 
     <li> <input type="radio" name="logincategory" value="administrator"> Administrator </li> 
     <li> <input type="radio" name="logincategory" value="director"> Director (IQAC) </li> 
     <li> <input type="radio" name="logincategory" value="vicechancellor"> Vice Chancellor </li> 
     <li> <input type="radio" name="logincategory" value="registrar"> Registrar </li> 
     <li> <input type="radio" name="logincategory" value="facutly"> Faculty/Dept. Representative </li> 
    </ul> 
    </section> 
    <section id="loginsection" > 
     <p> 
     <label for="username" style="color:#000; font-weight:700">Username:</label> 
     <input type="text" name="username" id="username" style="width:300px" required placeholder="enter username" maxlength="20"> 
     </p> 
     <p> 
     <label for="password" style="color:#000; font-weight:700">Password:</label> 
     <input type="password" name="password" id="password" style="width:300px" required placeholder="enter password" maxlength="20"> 
     </p> 
     <p class="login-submit"> 
     <input type="hidden" name="form_token" value="<?php echo $form_token; ?>" /> 
     <button type="submit" class="login-button" onclick="document.getElementById('logincategorybutton').click();" value="&rarr; Login">Login</button> 
     </p> 
    <!-- <p class="forgot-password"><a href="index.html">Forgot your password?</a></p>--> 
    <sup style="color:#000; padding-left:150px;"> ** both username and password must be alpha-numeric between 4-20 characters</sup> 
    </section> 
</form> 
+2

**中国谚语**:“给一个人一条鱼,你喂他一天,教一个人钓鱼,你一辈子喂他。” –

+0

Thanx帮助亚历克斯,但这很明显,把一切都放在一个单一的形式。由于一些CSS原因,我无法将它们放在一个表单中。 –

+1

@Fred点采取,但它更容易显示在代码比解释。 – AlexP

1
<section id="loginsection" > 
    <form method="post" action="login.php" class="login" id="loginform"> 
    <p> 
     <label for="username" style="color:#000; font-weight:700">Username:</label> 
     <input type="text" name="username" id="username" style="width:300px" required placeholder="enter username" maxlength="20"> 
    </p> 

    <p> 
     <label for="password" style="color:#000; font-weight:700">Password:</label> 
     <input type="password" name="password" id="password" style="width:300px" required placeholder="enter password" maxlength="20"> 
    </p> 

    <p class="login-submit"> 
     <input type="hidden" name="form_token" value="<?php echo $form_token; ?>" /> 
     <button type="submit" class="login-button" value="&rarr; Login">Login</button> 
    </p> 

    <!-- <p class="forgot-password"><a href="index.html">Forgot your password?</a></p>--> 
    </form> 

     </section> 






<section id="categorysection" >  

     <form form="loginform"> 
      <ul style="font-size:20px; font-color:#000;"> 
       <li> <input type="radio" form="loginform" name="logincategory" value="administrator"> Administrator </li> 
       <li> <input type="radio" form="loginform" name="logincategory" value="director"> Director (IQAC) </li> 
       <li> <input type="radio" form="loginform" name="logincategory" value="vicechancellor"> Vice Chancellor </li> 
       <li> <input type="radio" form="loginform" name="logincategory" value="registrar"> Registrar </li> 
       <li> <input type="radio" form="loginform" name="logincategory" value="facutly"> Faculty/Dept. Representative </li> 
      </ul> 
     </form>  
</section> 
+0

人们关心地看到,后一部分没有直接放在表单标签下,而是成为了表单的一部分,所以现在我实际上可以将该部分放置在页面的任何位置(这是我的情况所需要的实际上) –

+0

@Fred这是一个新的HTML5属性,它是有效的,无线电选项将提交 - 仅适用于支持它的浏览器的用户! – AlexP

+0

@AlexP好的谢谢。就我个人而言,我喜欢HTML5所提供的内容,并且对于很多方面而言,但我不会因为表单而混淆它。最好的是,我保持独立*,因为它是*,直到每个人都有一个HTML5兼容的Web浏览器,这可能发生在... 5,10年?这是一个不错的选择,嘿,不要误解我的意思,我只是为了进化而已,但是“老派”方法(不是全部,但很多)都会有它的位置,甚至大部分都是形式。非常感谢洞察力,欢呼声。 –

相关问题