Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Καλησπέρα σε όλους.

Έχω ένα μικρό πρόβλημα σε php.

Δεν ξέρω που έχω κάνει λάθος.

Το παρακάτω δουλεύει ως εξείς...

Είναι μια φόρμα sign up που στο τέλος κάνει validate τον κωδικό πρόσβασης.

Όταν πατάω sign up δεν αποθηκευει τίποτα στην βάση δεδομένων,

Μήπως μπορεία κάποιος να βοηθεισει???

 

 

>
   <script>
function passwordStrength(password)
{
   var desc = new Array();
   desc[0] = "Very Weak";
   desc[1] = "Weak";
   desc[2] = "Better";
   desc[3] = "Medium";
   desc[4] = "Strong";
   desc[5] = "Strongest";
   var score   = 0;
   //if password bigger than 6 give 1 point
   if (password.length > 6) score++;
   //if password has both lower and uppercase characters give 1 point   
   if ( ( password.match(/[a-z]/) ) && ( password.match(/[A-Z]/) ) ) score++;
   //if password has at least one number give 1 point
   if (password.match(/\d+/)) score++;
   //if password has at least one special caracther give 1 point
   if ( password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/) )    score++;
   //if password bigger than 12 give another 1 point
   if (password.length > 12) score++;
 document.getElementById("passwordDescription").innerHTML = desc[score];
 document.getElementById("passwordStrength").className = "strength" + score;
}
</script>
  
  
</head>
<body>

<?php
$message="";
//read first name
if(isset($_POST['firstname']))
{
   $firstname=$_POST['firstname'];
   if($firstname=='')
   {
    $message="please enter firstname";
    signup_form($message);
    exit();
   }
}
else
{
   $message="firstname is not set";
   signup_form($message);
   exit();
}
//read last name
if(isset($_POST['lastname']))
{
   $lastname=$_POST['lastname'];
   if($lastname=='')
   {
    $message="please enter lastname";
    signup_form($message);
    exit();
   }
}
else
{
   $message="lastname is not set";
   signup_form($message);
   exit();
}
//read username
if(isset($_POST['username']))
{
   $username=$_POST['username'];
   if($username=='')
   {
    $message="please enter username";
    signup_form($message);
    exit();
   }
}
else
{
   $message="username is not set";
   signup_form($message);
   exit();
}
//read birth date
if(isset($_POST['birthdate']))
{
   $birthdate=$_POST['birthdate'];
   if($birthdate=='')
   {
    $message="please enter birthdate";
    signup_form($message);
    exit();
   }
}
else
{
   $message="birthdate is not set";
   signup_form($message);
   exit();
}
if(!checkDateFormat($birthdate))
{
   $message="birthdate is not in correct form";
   signup_form($message);
   exit();   
}
//read password
if(isset($_POST['password']))
{
   $password=$_POST['password'];
   if($password=='' || strlen($password)>5)
   {
    $message="please enter password";
    signup_form($message);
    exit();
   }
}
else
{
   $message="password is not set";
   signup_form($message);
   exit();
}
//read confirm password
if(isset($_POST['confirm']))
{
   $confirm=$_POST['confirm'];
   if($confirm=='' || strlen($confirm)>5)
   {
    $message="please enter confirm password";
    signup_form($message);
    exit();
   }
}
else
{
   $message="confirm password is not set";
   signup_form($message);
   exit();
}
//confirm two passwords
if($password!=$confirm)
{
   $message="sorry, passwords do not match";
   signup_form($message);
   exit();
}

//connect to db--------------------------------------
$db='myproject';
//connect to mysql
$link = mysql_connect('localhost', 'root', 'pass');
if (!$link) {
   die('Could not connect: ' . mysql_error());
}
//echo 'Connected successfully';
mysql_set_charset('utf8', $link);
//select db
$db_selected = mysql_select_db($db, $link);
if (!$db_selected) {
   die ('Can\'t use mydb : ' . mysql_error());
}
//----------------------------------------------------
//check if username is used
if(!is_used($username))
{
   $message="sorry, username is used";
   mysql_close($link);
   signup_form($message);
   exit();
}
$sql = "INSERT INTO `user` (`firstname`, `lastname`, `username`, `birthdate`, `password`)
			    VALUES ('$firstname', '$lastname', '$username', '$birthdate','$password');";
$result = mysql_query($sql);
if (!$result)
{
   die('Invalid query: ' . mysql_error());
}
echo("<p>congratulations! registration was successful</p>");
mysql_close($link);
?>

<?php
function is_used($user) //checks if username already exists
{
   $sql = "SELECT * FROM `user`";
  
   $result = mysql_query($sql);
   if (!$result)
   {
    die('Invalid query: ' . mysql_error());
   }
  
   $new_user=true;
  
   while ($row = mysql_fetch_assoc($result))
   {
    if($row['username']==$user)
    {
	    $new_user=false;
	    break;
    }
   }
   return $new_user;
}
?>
<?php
function checkDateFormat($date)  //check for correct date format
{
 if (preg_match ("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts))
 {
    if(checkdate($parts[2],$parts[3],$parts[1]))
	  return true;
    else
	 return false;
 }
 else
   return false;
}
?>
<?php function signup_form($message)
{
echo "<br/><p align='center' style='color:red'>$message</p><br/>";
?>
<div class="container">
  <div  class="form">
	    <form id="contactform" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
		    <p class="contact"><label for="name">First Name</label></p>
		    <input id="firstname" name="firstname" placeholder="First name" required="" tabindex="1" type="text">
		   
		    <p class="contact"><label for="Last name">Last Name</label></p>
		    <input id="lastname" name="lastname" placeholder="Last name" required="" tabindex="2" type="text">
		   
		    <p class="contact"><label for="username">Create a username</label></p>
		    <input id="username" name="username" placeholder="username" required="" tabindex="3" type="text">
   
		    <p class="contact"><label for="Birthday">Birthday</label></p>
		    <input id="birthdate" name="birthdate" placeholder="yyyy-mm-dd" required="" tabindex="4" type="text" />
		   
		    <p class="contact"><label for="password">Create a password</label></p>
		    <input type="password" id="password" name="password" required="" onkeyup="passwordStrength(this.value)">
		   
		    <p class="contact"><label for="repassword">Confirm your password</label></p>
		    <input type="password" id="repassword" name="repassword" required="">
		   
		    <p>
		    <label for="passwordStrength">Password strength</label>
			    <div id="passwordDescription">Password not entered</div>
			    <div id="passwordStrength" class="strength0"></div>
		    </p>
		    <br/><br/>
	   
	    <input class="buttom" type="reset" value="reset" id="reset" tabindex="5" value="Reset!" type="reset" />
	    <input class="buttom" name="submit" id="submit" tabindex="5" value="Sign me up!" type="submit">   
  </form>
  <?php } ?>
</div>	 
</div>
</body>

Επεξ/σία από igor981930
Δημοσ.

TS αρχικα βαλε τον κωδικα σου σε code tags για να καθησουμε να τον διαβασουμε και να υπαρξει επιλυση του προβληματος..

 

ναι έχεις δίκιο koslibro.

το εκανα

Δημοσ.

Στην φόρμα γράφεις:

 

>
<p class="contact"><label for="repassword">Confirm your password</label></p>
<input type="password" id="repassword" name="repassword" required="">

 

Στον έλεγχο που κάνεις μέσω php γράφεις:

 

>
//read confirm password
if(isset($_POST['confirm']))
{
$confirm=$_POST['confirm'];
if($confirm=='' || strlen($confirm)>5)
{
$message="please enter confirm password";
signup_form($message);
exit();
}
}
else
{
$message="confirm password is not set";
signup_form($message);
exit();
}

 

Βλέπεις το πρόβλημα?

  • Like 1
Δημοσ.

Στην φόρμα γράφεις:

 

>
<p class="contact"><label for="repassword">Confirm your password</label></p>
<input type="password" id="repassword" name="repassword" required="">

 

Στον έλεγχο που κάνεις μέσω php γράφεις:

 

>
//read confirm password
if(isset($_POST['confirm']))
{
$confirm=$_POST['confirm'];
if($confirm=='' || strlen($confirm)>5)
{
$message="please enter confirm password";
signup_form($message);
exit();
}
}
else
{
$message="confirm password is not set";
signup_form($message);
exit();
}

 

Βλέπεις το πρόβλημα?

 

Οχι δεν το βλεπω δυστηχως.

Μηπως μπορεις να με βοηθεισεις γτ ο εγκεφαλος μου και τα ματια μου απο την αυπνια ειναι χαλια?

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...