igor981930 Δημοσ. 20 Νοεμβρίου 2012 Δημοσ. 20 Νοεμβρίου 2012 (επεξεργασμένο) Καλησπέρα σε όλους. Έχω ένα μικρό πρόβλημα σε 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> Επεξ/σία 20 Νοεμβρίου 2012 από igor981930
koslibpro Δημοσ. 20 Νοεμβρίου 2012 Δημοσ. 20 Νοεμβρίου 2012 TS αρχικα βαλε τον κωδικα σου σε code tags για να καθησουμε να τον διαβασουμε και να υπαρξει επιλυση του προβληματος..
igor981930 Δημοσ. 20 Νοεμβρίου 2012 Μέλος Δημοσ. 20 Νοεμβρίου 2012 TS αρχικα βαλε τον κωδικα σου σε code tags για να καθησουμε να τον διαβασουμε και να υπαρξει επιλυση του προβληματος.. ναι έχεις δίκιο koslibro. το εκανα
kastorass Δημοσ. 20 Νοεμβρίου 2012 Δημοσ. 20 Νοεμβρίου 2012 Στην φόρμα γράφεις: > <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(); } Βλέπεις το πρόβλημα? 1
igor981930 Δημοσ. 20 Νοεμβρίου 2012 Μέλος Δημοσ. 20 Νοεμβρίου 2012 Στην φόρμα γράφεις: > <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(); } Βλέπεις το πρόβλημα? Οχι δεν το βλεπω δυστηχως. Μηπως μπορεις να με βοηθεισεις γτ ο εγκεφαλος μου και τα ματια μου απο την αυπνια ειναι χαλια?
kastorass Δημοσ. 20 Νοεμβρίου 2012 Δημοσ. 20 Νοεμβρίου 2012 Διάβασε την τιμή με $_POST['repassword']) αντί για $_POST['confirm']) στον έλεγχο που κάνεις μέσω php.
igor981930 Δημοσ. 20 Νοεμβρίου 2012 Μέλος Δημοσ. 20 Νοεμβρίου 2012 σε ευχαριστω πολυ που ασχοληθεικες.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα