Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> rejestracja - problem
akord3on
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 24.08.2010

Ostrzeżenie: (0%)
-----


Witam,
mam mały problem z rejestracja uzytkowników na stronie,
posiadam mały skrypt na rejestracje, jednakże przy rejestracji, wyświetla błąd,
"Error in signup procedure".

W czym może być problem?
Oto skrypt:
  1. <?php
  2. // include config file
  3. require_once("config.php");
  4. // include files
  5. require_once(INC_ROOT."/dblayer.php");
  6. require_once(INC_ROOT."/system.php");
  7. require_once(INC_ROOT."/users.php");
  8.  
  9. // initialise db access
  10. global $db;
  11. $db = new MySQL();
  12. $db->connect();
  13.  
  14. $showform = false;
  15. $err_msg = '';
  16. $redirect_to = WEB_ROOT.'/home.php';
  17.  
  18. if ( isset($_POST['signup']) ) { // form was submitted and try to signup user
  19. $username = $_POST['username'];
  20. $password = $_POST['password'];
  21. $password2 = $_POST['password2'];
  22. $email = $_POST['email'];
  23.  
  24. if ( $password == $password2 ) {
  25. if ( !user_load('',$username) ) {
  26. if ( user_signup($username, $password, $email) ) {
  27. $showform = false;
  28. user_login($username, $password); // chg this for different authentication method
  29. $u = user_load($username);
  30. // print_r($u);
  31. header("Location: http://" . $_SERVER['HTTP_HOST'] .$redirect_to);
  32. } else {
  33. echo "Error in signup procedure";
  34. }
  35. } else {
  36. $showform = true;
  37. $err_msg = 'Username already exists. Please choose another username';
  38. }
  39. } else {
  40. $showform = true;
  41. $err_msg = 'Both passwords should be identical.';
  42. }
  43. } else { // no form was submitted
  44. $showform = true;
  45. }
  46.  
  47. if ( $showform ) {
  48.  
  49. if ( is_login() ) { // logged in
  50. header("Location: http://" . $_SERVER['HTTP_HOST'] .$redirect_to);
  51. } else { // not yet logged in
  52. $qb_title = 'konto utworzone';
  53. include("inc/header-meta.inc");
  54. include("inc/qb-static-header.inc");
  55. include("inc/grey-header.inc");
  56. include("inc/content-signup.inc");
  57. include("inc/content-footer.inc");
  58. include("inc/grey-footer.inc");
  59. include("inc/qb-static-footer.inc");
  60. }
  61. }
  62. ?>


Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




rety.... znajdz 10 roznic
echo '1';
else '1';

załamka.
Go to the top of the page
+Quote Post
akord3on
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 24.08.2010

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 11.10.2010, 21:36:18 ) *
rety.... znajdz 10 roznic
echo '1';
else '1';

załamka.


Fakt moja pomyłka. Jednak przy echo, wystąpuje nadal problem "Error in signup procedure".
  1. <?php
  2.  
  3.  
  4. require_once("system.php");
  5.  
  6. Class User {
  7.  
  8. //treat as read-only variables
  9. //identity
  10. var $user_id;
  11. var $username;
  12. var $name;
  13. var $nickname;
  14. var $email;
  15.  
  16.  
  17. function get_blogs_user_owns()
  18. {
  19. global $db;
  20.  
  21. if ( $db->query("SELECT blog_name FROM blogs WHERE blog_owner_id = '$this->user_id';") ) {
  22. $blogs_user_owns = array();
  23. for ( $i=0 ; $i < $db->num_rows() ; $i++ ) {
  24. $row = $db->fetch_array();
  25. $blogs_user_owns[] = $row['blog_name'];
  26. }
  27. echo "1"; return $blogs_user_owns;
  28. } else
  29. echo '2'; return set_error("get_blogs_u_owns(): db query".$db->error());
  30. }
  31. }
  32.  
  33. function get_blogs_user_mods()
  34. {
  35. global $db;
  36.  
  37.  
  38. if ( $db->query("SELECT blog_name FROM mods WHERE mod_id = '$this->user_id' ;") ) {
  39. $blogs_user_mods = array();
  40. for ( $i=0 ; $i<$db->num_rows() ; $i++ ) {
  41. $row = $db->fetch_array();
  42. $blogs_user_mods[] = $row['blog_name'];
  43. }
  44. echo '3'; return $blogs_user_mods;
  45. } else {
  46. echo '4'; return set_error("get_blogs_u_mods(): db query".$db->error());
  47. }
  48. }
  49.  
  50. function set_user_type($blog_name)
  51. {
  52. global $CUR_USER;
  53.  
  54. $blogs_user_owns = array();
  55. $blogs_user_owns = $this->get_blogs_user_owns();
  56.  
  57. $blogs_user_mods = array();
  58. $blogs_user_mods = $this->get_blogs_user_mods();
  59.  
  60. if ( in_array($blog_name,$blogs_user_owns) ) {
  61. $CUR_USER = BLOG_OWNER;
  62. } else if ( in_array($blog_name,$blogs_user_mods) ) {
  63. $CUR_USER = BLOG_MOD;
  64. } else {
  65. $CUR_USER = BLOG_GUEST;
  66. }
  67. //echo $CUR_USER;
  68. echo '5'; return true;
  69. }
  70. }
  71.  
  72. // user signsup for the service
  73. function user_signup($username, $password, $email, $name='', $nickname='')
  74. {
  75. global $db;
  76.  
  77. $username = strtolower(trim($username));
  78. $email = strtolower(trim($email));
  79. $password = md5($password); // not modifying the password at all... so clever of me ;-)
  80.  
  81. /* Username can be
  82.   if ( $name = '' ) {
  83.   $name = $username;
  84.   }
  85.   */
  86. if ( $nickname = '' ) {
  87. $nickname = $username;
  88. }
  89. if ( $name = '' ) {
  90. $name = $username;
  91. }
  92.  
  93. if ( !$username || !$email ) {
  94. echo '6'; return set_error("user_signup(): invalid username or email");
  95. } else {
  96. if ( !$db->dbh ) {
  97. echo '7'; return set_error("user_signup():Invalid db handle".$db->error());
  98. } else {
  99. if( user_load('',$username) ) {
  100. echo '8'; return set_error("user_signup():User exists");
  101. } else {
  102. // if ( $db->query("INSERT INTO users(username,name,nickname,email) values('$username','$name','$nickname','$email')") ) {
  103. if ( $db->query("INSERT INTO users(username,password,name,nickname,email) values('$username','$password','$name','$nickname','$email')") ) {
  104. echo '9'; return true;
  105. } else {
  106. echo '10'; return set_error("user_signup(): error in insert query".$db->error());
  107. }
  108. }
  109. }
  110. }
  111. }
  112.  
  113. // authenticates a user, returns TRUE on sucessful authentication
  114. function user_authenticate($username,$password)
  115. {
  116. global $db;
  117. /*
  118.   if ( $username == $password ) {
  119.   return true;
  120.   }
  121.   */
  122.  
  123. $password = md5($password);
  124.  
  125. if ( !$db->dbh ) {
  126. echo '11'; return set_error("user_authenticate():Invalid db handle".$db->error());
  127. } else {
  128. if ( $db->query("SELECT username FROM users WHERE username='$username' AND password ='$password'") ) {
  129. if ( $db->num_rows() == 1 ) {
  130. echo '12'; return true;
  131. } else {
  132. echo '13'; return false;
  133. }
  134. } else {
  135. echo '14';return set_error("user_signup(): error in insert query".$db->error());
  136. }
  137. }
  138.  
  139. return false;
  140. }
  141.  
  142. // logs in the user and sets CUR_USER global var appropriately admin for admin and username for mods
  143. function user_login($username,$password)
  144. {
  145. $username = strtolower($username);
  146.  
  147. if ( user_authenticate($username,$password) ) {
  148. $_SESSION['username'] = $username;
  149. echo '15'; return true;
  150. } else {
  151. echo '16'; return set_error("Invalid username or password");
  152. }
  153. }
  154.  
  155. //loads the user with username $username and returns an object of type User
  156. function user_load($user_id='', $username='')
  157. {
  158. global $db;
  159.  
  160. if ( !$db->dbh )
  161. echo '17'; return set_error("user_load():Invalid database handle");
  162.  
  163. $username = trim($username);
  164. $user_id = trim($user_id);
  165. if ( !$username && !$user_id )
  166. echo '18'; return set_error("user_load():user_id OR username is required to load.");
  167.  
  168. if ( $user_id != '' ) {
  169. if ($db->query("SELECT * FROM users WHERE user_id = '$user_id';")) {
  170. if ( $db->num_rows() == 1 ) {
  171. $row = $db->fetch_array();
  172.  
  173. $u = new User();
  174. _user_load($row,$u);
  175.  
  176. echo '19'; return $u;
  177. } else {
  178. set_error("user_load():userid doesnt exists".$db->error());
  179. }//i guess i can remove the else part
  180. } else {
  181. //print db->error();
  182. echo '20'; return set_error("user_load():".$db->error());
  183. }
  184. } else {
  185. if ($db->query("SELECT * FROM users WHERE username = '$username';")) {
  186.  
  187. if ( $db->num_rows() == 1 ) {
  188. $row = $db->fetch_array();
  189.  
  190. $u = new User();
  191. _user_load($row,$u);
  192.  
  193. echo '21'; return $u;
  194. } else {
  195. set_error("user_load():username doesnt exists".$db->error());
  196. }//i guess i can remove the else part
  197. } else {
  198. //print db->error();
  199. echo '22';return set_error("user_load():".$db->error());
  200. }
  201. }
  202. }
  203.  
  204.  
  205. function _user_load(&$row, &$obj)
  206. {
  207. //identity
  208. $obj->user_id = $row['user_id'];
  209. $obj->username = $row['username'];
  210. $obj->name = $row['name'];
  211. $obj->nickname = $row['nickname'];
  212. $obj->email = $row['email'];
  213. }
  214.  
  215. function is_login() {
  216. if ( isset($_SESSION['username']) ) {
  217. echo '23'; return true;
  218. } else {
  219. echo '24'; return false;
  220. }
  221. }
  222. ?>

Go to the top of the page
+Quote Post

Posty w temacie
- akord3on   rejestracja - problem   11.10.2010, 19:37:01
- - nospor   Metoda user_signup() zwraca ci FALSE   11.10.2010, 19:38:45
|- - akord3on   Cytat(nospor @ 11.10.2010, 20:38:45 )...   11.10.2010, 19:44:01
- - nospor   A niby jak ty zmieniles to? Gdyby ta metoda zwraca...   11.10.2010, 19:47:13
|- - akord3on   Cytat(nospor @ 11.10.2010, 20:47:13 )...   11.10.2010, 19:53:42
- - nospor   A niby skąd mam wiedziec? Nie mam zielonego pojęci...   11.10.2010, 19:55:10
|- - akord3on   Cytat(nospor @ 11.10.2010, 20:55:10 )...   11.10.2010, 19:59:43
- - nospor   Ty się głupio nie pytać, ty pokazać   11.10.2010, 20:05:03
|- - akord3on   Cytat(nospor @ 11.10.2010, 21:05:03 )...   11.10.2010, 20:09:15
- - nospor   Masz tam mase return. Postaw przed każdym echo ...   11.10.2010, 20:11:54
|- - akord3on   Cytat(nospor @ 11.10.2010, 21:11:54 )...   11.10.2010, 20:26:55
- - nospor   Pokaz jak wstawiles bo zrobiles to źle No jak moż...   11.10.2010, 20:30:38
|- - akord3on   Cytat(nospor @ 11.10.2010, 21:30:38 )...   11.10.2010, 20:33:52
- - nospor   rety.... znajdz 10 roznic echo '1'; else ...   11.10.2010, 20:36:18
|- - akord3on   Cytat(nospor @ 11.10.2010, 21:36:18 )...   12.10.2010, 09:56:10
- - nospor   CytatJednak przy echo, wystąpuje nadal problem ...   12.10.2010, 10:28:08
|- - akord3on   Cytat(nospor @ 12.10.2010, 11:28:08 )...   12.10.2010, 10:38:59
- - nospor   CytatJakoby się ona pojawiła, dał bym znać.A to ju...   12.10.2010, 10:44:10
|- - akord3on   Cytat(nospor @ 12.10.2010, 11:44:10 )...   12.10.2010, 11:04:35
- - nospor   if ( !$username || !$email ) { ...   12.10.2010, 11:07:48
|- - akord3on   Tak jest. A teraz jest, "10Error in signup pr...   12.10.2010, 11:20:44
- - nospor   if ( $db->query("INSERT INTO users(us...   12.10.2010, 11:26:17


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 06:08