login  Naam:   Wachtwoord: 
Registreer je!
 Forum

register script

Offline Ultimatum - 21/10/2005 16:13 (laatste wijziging 21/10/2005 16:20)
Avatar van UltimatumPHP expert heb nu dus een script alleen hij zeikt altijd dat de email niet is ingevuld, zover ik kan zien zijn de namen etc. wel goed, maar mss doe ik iets verkeerd wat jullie wel zien 

ps: op regel 32 word er gekeke word of de email veld leeg is of niet 
  1. <html>
  2. <head>
  3. <title>Register</title>
  4. </head>
  5.  
  6. <body>
  7. <form name="register" method="post" action="<?php $php_self ?>">
  8. Username:<br />
  9. <input name="username" type="text" id="username" <? if($_SESSION['auth']){ echo "disabled=disabled"; } ?>><br />
  10. Password:<br />
  11. <input name="password" type="password" id="password" <? if($_SESSION['auth']){ echo "disabled=disabled"; } ?>><br />
  12. Password [check]:<br />
  13. <input name="cpassword" type="password" id="cpassword" <? if($_SESSION['auth']){ echo "disabled=disabled"; } ?>><br />
  14. Email:<br />
  15. <input name="email" type="text" id="email"><br />
  16. <input name="submit" type="submit" id="submit" value="Submit Registration" <? if($_SESSION['auth']){ echo "disabled=disabled"; } ?>>
  17. <br /><br />
  18. <?php
  19. if(isset($_POST['submit'])) {
  20. $username = $_POST['username'];
  21. $password = $_POST['password'];
  22. $cpassword = $_POST['cpassword'];
  23. $email = $_POST['emai1'];
  24. $ip = $_SERVER['REMOTE_ADDR'];
  25.  
  26. if(empty($username)) {
  27. echo "You have to fill in an username";
  28. }elseif (empty($password)) {
  29. echo "You have to fill in a password";
  30. }elseif (empty($cpassword)) {
  31. echo "You have to confirm your password";
  32. }elseif (empty($email)) {
  33. echo "You have to fill in an email address";
  34. }elseif($password != $cpassword) {
  35. echo "passwords do not match";
  36. }else{
  37. $password = md5($password);
  38. $checkname = mysql_query("SELECT username FROM users WHERE username='$username'");
  39. $checkname= mysql_num_rows($checkname);
  40. $checkemail = mysql_query("SELECT email FROM users WHERE email='$email'");
  41. $checkemail = mysql_num_rows($checkemail);
  42. if ($checkemail>0) {
  43. echo "That email address has already been used";
  44. }elseif ($checkname>0) {
  45. echo "That username has already been taken";
  46. }else{
  47. $username = htmlspecialchars($username);
  48. $password = htmlspecialchars($password);
  49. $email = htmlspecialchars($email);
  50.  
  51. $query = mysql_query("INSERT INTO users (username, password, email, ip) VALUES('$username','$password','$email','$ip')");
  52. echo "You have successfully registered!";
  53. echo "You can now login by clicking <a href='?pagina=login'>here</a>";
  54. }
  55. }
  56. }
  57. ?>
  58. </body>
  59. </html>

10 antwoorden

Gesponsorde links
Offline TFOL - 21/10/2005 16:16
Avatar van TFOL PHP beginner bij $_POST[username] moet je username wel even tussen ' ' zetten hè net als bij de rest
Offline Ultimatum - 21/10/2005 16:20 (laatste wijziging 21/10/2005 17:35)
Avatar van Ultimatum PHP expert ok, heb de code hierboven nu upgedate, maar weet je wat ik fout doe..??
Offline Ibrahim - 21/10/2005 17:45 (laatste wijziging 21/10/2005 17:51)
Avatar van Ibrahim PHP expert gebruik dit :

  1. <?php
  2. function check_email($in) {
  3. $patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i";
  4. return preg_match($patroon, $in);
  5. } //\FangorNs script
  6. ?>


en dan wel zo gebruiken:

  1. <?php
  2. if(check_email($_POST['email'])) {
  3. echo "Adres ok.";
  4. }
  5. ?>


En $username=$_POST['username']; is ook onnodig 
Offline Rens - 21/10/2005 17:47
Avatar van Rens Gouden medaille

Crew algemeen
  1. enne wat jij doet klopt ook niet helemaal: verander empty in:
  2. if($_POST['naam'] == '')
  3. {
  4. //leeg
  5. }


Wat jij doet klopt misschien wel, maar empty is er de functie voor om te checken of iets wel/niet leeg is...
Dus niet zeggen dat het niet klopt wat Ultimatum doet.
Offline Ibrahim - 21/10/2005 17:51
Avatar van Ibrahim PHP expert srry heb het net getest en je hebt gelijk Rensjuh dan heb ik het vroeger verkeerd gelezen..
Offline Ultimatum - 21/10/2005 18:00 (laatste wijziging 21/10/2005 18:01)
Avatar van Ultimatum PHP expert jah, van mij klopt wel  

maar iig siliecom mot ik wat jij zei ipv dat (empty($email)) doen want dan checkt ie tog ook niet meer of email leeg is..

en mot er niet iets kome als het address fout is, want wat jij zei dan komt er een echo als het goed is, maar ik wil alleen als het fout is 
Offline Maarten - 21/10/2005 18:02
Avatar van Maarten Erelid Kunnen we misschien zelf ook nog enige moeite doen? Danku.
Offline Ibrahim - 21/10/2005 18:02 (laatste wijziging 21/10/2005 18:03)
Avatar van Ibrahim PHP expert nee maar dan checkt hij of de email klopt of niet.
Dus als je niets invult geeft een error als je dit typt email geeft ie een error, maar als je dit typt: email@adres.com geeft ie geen error.

Conclusie: hij kijkt of de email valid is...

Over je laatste reactie moet je er maar zelf achter komen... het is zo simpel 
Offline Ultimatum - 21/10/2005 18:07
Avatar van Ultimatum PHP expert @murfy en siliecom, ik heb al gezocht en nu vraag ik het hier en heeft eigelijk nog niemand een antwoord gegeve op mijn vraag, dus ik stel hem weer (niet pissig worde iedereen please )

wrom geeft hij altijd aan dat email niet is ingevuld, terwijl dat wel het geval is en wat doe ik dan fout (zie post #1 voor script )
Offline Ibrahim - 21/10/2005 19:07
Avatar van Ibrahim PHP expert if(!check_email($_POST['email']))
{
//email werkt niet
}

maar daar zou je zelf wel achter kunnen komen anders kun je gewoon niet goed nadenken of zoeken...
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.256s