Hello!
So I was trying to make a basic registration form for website. Thing is, it kinda send data and insert it into database but not all of it.
Name, Last name, Username and Password are not send but email and language are. I can not figure out where is a problem with it.
HTML:
<form name="reg" action="resscriptsdata.php" method="post" id="reg" onsubmit="return passCheck();"> <div> <label for="name">Name:</label> <input type="text" id="name" name="name" value="" required pattern="[^]+"/> </div> <div> <label for="last_name">Last Name:</label> <input type="text" id="last_name" name="last_name" value="" required pattern="[^]+" /> </div> <div> <label for="username">Username:</label> <input type="text" id="username" name="username" value="" required pattern="[^]+"/> </div> <div> <label for="password1">Password:</label> <input type="password" id="password1" name="password1" value="" required pattern="[^]+"/><span id="passerr"></span> </div> <div> <label for="email">Email:</label> <input type="email" name="email" id="email"/> </div> <div> <label for="lang1">First language</label> <select name="lang1" onChange="callSave(this)" required> <option value="">Select...</option> <option value="English">English</option> <option value="Polish">Polish</option> </select> </div> <div> <label for="lang2">Second language(optional):</label> <select name="lang2" onChange="callSave(this)"> <option value="">Select...</option> <option value="English">English</option> <option value="Polish">Polish</option> </select> </div> <div> <input name="submit" type="submit" id="register" value="Register"/> </div></form>
PHP:
<?php$con=mysqli_connect("localhost", "root", "", 'login');if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); }/*get form data*/$name = mysqli_real_escape_string($_POST['name']);$last_name = mysqli_real_escape_string($_POST['last_name']);$username = mysqli_real_escape_string($_POST['username']);$password1 = mysqli_real_escape_string($_POST['password1']);$email = mysqli_real_escape_string($_POST['email']);$lang1 = $_POST['lang1'];$lang2 = $_POST['lang2'];/*check if user in database*/$username_check = mysqli_query($con, 'SELECT Username FROM login.users WHERE Username = $username'); if (mysqli_num_rows($username_check) > 0){ header('Location: usererr.php'); };/*check if email in database*/$email_check = mysqli_query($con, 'SELECT Email FROM login.users WHERE Email = $email'); if (mysqli_num_rows($email_check) > 0){ header('Location: emailerr.php'); };/*hash password*/$hash = hash('sha256', $password1);function createSalt(){ $text = md5(uniqid(rand(), true)); return substr($text, 0,3); };$salt = createSalt();$password = hash('sha256',$salt . $hash);$activation = md5($email.time());/*send data*/$reg_query = "INSERT INTO users (Name, Surname, Username, Password, Email, Lang1, Lang2, Salt, Activation) VALUES ('$name', '$last_name', '$username', '$password', '$email', '$lang1', '$lang2', '$salt', '$activation');";mysqli_query($reg_query);mysqli_close;header('Location: regsuc.php'); ?>
Database details:
Thank You for any help given