Ace vào giúp với

8 bài đăng
02.12.2017 / 15:46
VinaDP
Bài đăng: 627
Member

Mình có code đăng ký

PHP
  1. <?php
  2. $title = 'Đăng Ký';
  3. include 'head.php';
  4. if (!isset($_SESSION['login'])){
  5. include 'func.php';
  6. $chacode = rand_string(5);
  7. if (!isset($_POST['code'])){
  8. $_SESSION['captcha'] = $chacode;
  9. }
  10. if (isset($_POST['registration'])){
  11.  
  12. $account = htmlspecialchars($_POST['account']);
  13. $account1 = str_replace($account1," ","");
  14. $password = htmlspecialchars($_POST['password']);
  15. $repassword = htmlspecialchars($_POST['repassword']);
  16. $email = htmlspecialchars(strtolower($_POST['email']));
  17. $accd = rand(00000,99999);
  18. $captcha = htmlspecialchars($_POST['code']);
  19. if ($account == NULL){
  20. $eracc = 'Bạn chưa nhập tên tài khoản !';
  21. $xulya = '0';
  22. }
  23. if ($password == NULL){
  24. $erpass = 'Bạn chưa nhập mật khẩu !';
  25. $xulya = '0';
  26. }
  27. if ($repassword == NULL){
  28. $errepass = 'Bạn chưa nhập lại mật khẩu !';
  29. $xulya = '0';
  30. }
  31. if ($email == NULL){
  32. $eremail = 'Bạn chưa nhập email !';
  33. $xulya = '0';
  34. }
  35. if ($captcha == NULL){
  36. $ercap = 'Bạn chưa nhập mã xác nhận !';
  37. $xulya = '0';
  38. }
  39. if ($xulya != '0'){
  40. if(!preg_match('#[a-zA-Z0-9-.]#is',$account,$dcm)){
  41. $eracc = 'Chỉ cho phép đăng ký tài khoản có ký tự a-z,A-Z,0-9,-. !';
  42. $xuly = '0';
  43. }
  44. if(!preg_match('#[a-zA-Z0-9-.]#is',$password,$dcm)){
  45. $erpass = 'Chỉ cho phép đăng ký mật khẩu có ký tự a-z,A-Z,0-9,-. !';
  46. $xuly = '0';
  47. }
  48. if(!preg_match('#[a-zA-Z0-9-.]@gmail.com#is',$email,$dcm)){
  49. $eremail = 'Chỉ cho phép đăng ký thư điện tử có ký tự a-z,A-Z,0-9,-. và @gmail.com !';
  50. $xuly = '0';
  51. }
  52. }
  53. if ($xuly != '0'){
  54. if (strlen($account) > '15'){
  55. $eracc = 'Tên tài khoản giới hạn 15 ký tự !';
  56. $xuly1 = '0';
  57. }
  58. if (strlen($password) > '20'){
  59. $erpass = 'Mật khẩu giới hạn 20 ký tự !';
  60. $xuly1 = '0';
  61. }
  62. if (strlen($email) > '30'){
  63. $eremail = 'Thư điện tử giới hạn 30 ký tự !';
  64. $xuly1 = '0';
  65. }
  66. if ($xuly1 != '0'){
  67. if (strlen($account) < '4'){
  68. $eracc = 'Tên tài khoản ít nhất 4 ký tự !';
  69. $xuly11 = '0';
  70. }
  71. if (strlen($password) < '6'){
  72. $erpass = 'Mật khẩu ít nhất 6 ký tự !';
  73. $xuly11 = '0';
  74. }
  75. if (strlen($email) < '8'){
  76. $eremail = 'Thư điện tử ít nhất 8 ký tự !';
  77. $xuly11 = '0';
  78. }
  79. }
  80. if ($xuly11 != '0'){
  81. $sql = mysql_query('SELECT account FROM user WHERE account = "'.$account.'"');
  82. if (mysql_num_rows($sql) > '0'){
  83. $eracc= 'Tài khoản đã tồn tại !';
  84. $insert = '0';
  85. }
  86. if ($repassword != $password){
  87. $errepass = 'Mật khẩu nhập lại không đúng !';
  88. $insert = '0';
  89. }
  90. $sqll = mysql_query('SELECT email FROM user WHERE email = "'.$email.'"');
  91. if (mysql_num_rows($sqll) > '0'){
  92. $eremail= 'Email đã tồn tại !';
  93. $insert = '0';
  94. }
  95. if (isset($_POST['code'])){
  96. if ($captcha == $_SESSION['captcha']){
  97. echo '';
  98. $_SESSION['captcha'] = $chacode;
  99. } else {
  100. $ercap = 'Mã xác nhận không đúng !';
  101. $_SESSION['captcha'] = $chacode;
  102. $insert = '0';
  103. }
  104. }
  105. if ($insert != '0'){
  106. $timereg = date('H:i:s d/m/Y');
  107. mysql_query('INSERT INTO user SET account = "'.$account.'",password = "'.md5($password).'",email = "'.$email.'",accd = "'.$accd.'",timereg = "'.$timereg.'"');
  108. echo '<div class="list3">Đăng ký thành công ! Mã bảo mật của bạn là '.$accd.'</div>';
  109. }
  110. }
  111. }
  112. }
  113. if ($eracc == '' && $_POST['registration'] == ''){
  114. $eracc = '(Tên tài khoản ít nhất là 4 ký tự ,nhiều nhất là 15 ký tự)';
  115. }
  116. if ($erpass == '' && $_POST['registration'] == ''){
  117. $erpass = '(Mật khẩu ít nhất là 6 ký tự ,nhiều nhất là 20 ký tự)';
  118. }
  119. if ($errepass == '' && $_POST['registration'] == ''){
  120. $errepass = '(Nhập lại mật khẩu đã nhập khung trên)';
  121. }
  122. if ($eremail == '' && $_POST['registration'] == ''){
  123. $eremail = '(Thư điện tử dùng để lấy lại mật khẩu ,ký tự nhiều nhất 30 ký tự)';
  124. }
  125. echo '<div class="list"><form action ="" method="post">Tên tài khoản: '.$eracc.'<br><input type="text" name="account" value=""><br>Mật khẩu: '.$erpass.'<br><input type="password" name="password" value=""><br>Nhập lại mật khẩu: '.$errepass.'<br><input type="password" name="repassword" value=""><br>Thư điện tử: '.$eremail.'<br><input type="text" name="email" value=""><br>Mã xác nhận ['.$_SESSION['captcha'].']: '.$ercap.'<br><input type="text" name="code" value=""><br><input type="submit" name="registration" value="Đăng Ký"></form></div>';
  126. } else {
  127. echo '<div class="phdr">Đăng Ký</div><div class="list2">Chỉ dành cho thành viên chưa đăng nhập !</div>';
  128. }
  129. include 'foot.php';
  130. ?>

Mình đã dùng preg match mà sao nhập dấu cách nó k lọc v?

Giúp vs thank

02.12.2017 / 18:48
mad
Bài đăng: 2434
Member
Nhào vô cắn tao đi, tao sợ mày à cắn bừa.

thay dấu cách bằng \s thử xem

02.12.2017 / 18:48
mad
Bài đăng: 2434
Member
Nhào vô cắn tao đi, tao sợ mày à cắn bừa.

-. là gì preg match new à, [a-zA-Z0-9\.]

02.12.2017 / 18:51
VinaDP
Bài đăng: 627
Member
mad đã viết

-. là gì preg match new à, [a-zA-Z0-9\.]

??

Em không hiểu ;?

02.12.2017 / 21:25
MrKen
Bài đăng: 2653
Trùm!
Vẫn là A N H
PHP
  1. preg_match('#^[a-zA-Z0-9-.]+@gmail\.com$#i',$email,$dcm)
03.12.2017 / 08:59
VinaDP
Bài đăng: 627
Member
MrKen đã viết
PHP
  1. preg_match('#^[a-zA-Z0-9-.]+@gmail\.com$#i',$email,$dcm)

Lỗi chỗ này hả

05.12.2017 / 16:34
Jichan
Bài đăng: 1028
Member
Mệt cứ nói, đừng cố....

Hình như [a-zA-Z0-9\.] Chứ k phải [a-zA-Z0-9-.] Đâu. Kí tự đặt biệt sau dấu \ chứ k phải sau dấu -

05.12.2017 / 16:36
Jichan
Bài đăng: 1028
Member
Mệt cứ nói, đừng cố....

À. Thay thành [a-zA-Z0-9\-\.] Xem :v