Jump to content

Undefined index: gender in C:\wamp\www\1\registration.php on line 81


Go to solution Solved by Barand,

Recommended Posts

i received one warning TWO NOTICES AS

Undefined index: gender in C:\wamp\www\1\registration.php on line 81

Undefined index: tskills in C:\wamp\www\1\registration.php on line 82

implode() [function.implode]: Invalid arguments passed in C:\wamp\www\1\registration.php on line 82

why it is i checkes the syntax of the func implode.Any help is graetly appreciated.

<?php
 // Connects to your Database

 mysql_connect("localhost", "root", "") or die(mysql_error());

 mysql_select_db("simple_login") or die(mysql_error());


 //This code runs if the form has been submitted

 if (isset($_POST['submit'])) {



 //This makes sure they did not leave any fields blank

 if (!$_POST['username'] | !$_POST['pass'] | !$_POST['pass2'] ) {

         die('You did not complete all of the required fields');

     }



 // checks if the username is in use

     if (!get_magic_quotes_gpc()) {

         $_POST['username'] = addslashes($_POST['username']);

     }

 $usercheck = $_POST['username'];

 $check = mysql_query("SELECT username FROM users WHERE username = '$usercheck'")

or die(mysql_error());

 $check2 = mysql_num_rows($check);



 //if the name exists it gives an error

 if ($check2 != 0) {

         die('Sorry, the username '.$_POST['username'].' is already in use.');

                 }


 // this makes sure both passwords entered match

     if ($_POST['pass'] != $_POST['pass2']) {

         die('Your passwords did not match. ');

     }



     // here we encrypt the password and add slashes if needed

     $_POST['pass'] = md5($_POST['pass']);

     if (!get_magic_quotes_gpc()) {

         $_POST['pass'] = addslashes($_POST['pass']);

         $_POST['username'] = addslashes($_POST['username']);

             }

//post date to variables
//$a=$_POST['tskills'];
$username=$_POST['username'];
$pass=$_POST['pass'];
$firstname=$_POST['firstname'];
$middlename=$_POST['middlename'];
$lastname=$_POST['lastname'];
$gender=$_POST['gender'];
$tskills=implode(',', $_POST['tskills']);

 // now we insert it into the database

     $insert = "INSERT INTO users (username, password,firstname,middlename,lastname,gender,tskills)

             VALUES ('$username' , '$pass' , '.$firstname.' , '.'$middlename.' , '.$lastname.' , '.$gender.')";

     $add_member = mysql_query($insert);

     ?>



 
 <h1>Registered</h1>

 <p>Thank you, you have registered - you may now login</a>.</p>

 <?php
 }

 else
 {    
 ?>


 
 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

 <table border="0">
<tr><td>
<legend>NAME</legend>
FirstName: <input type="text"  name="firstname"  id="firstname">  <br/>
MiddleName:<input type="text"  name="middlename" id="middlename"> <br/>
LastName:  <input type="text"  name="lastname"   id="lastname">   <br/>
</td></tr>
<tr><td>
<legend>PHYSICAL INFO</legend>
Male  <input type="radio" id="male"   name="gender" value="male"><br/>
Female<input type="radio" id="female" name="gender" value="female"><br/>
</td></tr>
<tr><td>
<legend>TECHNICAL SKILLS</legend>
<input type="checkbox" name="tskills[]" value="html">html<br/>
<input type="checkbox" name="tskills[]" value="css">CSS<br/>
<input type="checkbox" name="tskills[]" value="javascript">Javascript<br/>
<input type="checkbox" name="tskills[]" value="jquery">Jquery<br/>
<input type="checkbox" name="tskills[]" value="php">PHP<br/>
<input type="checkbox" name="tskills[]" value="mysql">MySQL<br/>
<input type="checkbox" name="tskills[]" value="codeignitor">CodeIgnitor<br/>
</td></tr>

<legend>LOGIN DETAILS</legend>
 <tr><td>Username:</td><td>

 <input type="text" name="username" maxlength="60">

 </td></tr>

 <tr><td>Password:</td><td>

 <input type="password" name="pass" maxlength="10">

 </td></tr>

 <tr><td>Confirm Password:</td><td>

 <input type="password" name="pass2" maxlength="10">

 </td></tr>

 <tr><th colspan=2><input type="submit" name="submit"
value="Register"></th></tr> </table>

 </form>


 <?php

 }
 ?>
 

  • Solution

With radio buttons and check boxes only those selected are posted. So, it none are selected then $_POST['tskills'] and $_POST['gender'] do not exist, and hence your error messages.

 

Check they exist with something like

if (!isset($_POST['tskills'])) {
    // flag error or set default value
}
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.