Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Nie wpdowadza danych do bazy danych
Forum PHP.pl > Forum > Przedszkole
Raven1122
Witam mam taki kod:
  1. $sql = "INSERT INTO xxx(id, login, password, avatar, gender, name, gadu, tlen, email, www, joindate, lastlogin, activated, activationkey)" .
  2. "VALUES(0, '$login', '$password', '', '', '', '', '', '$email', '', '$now', '$now', 0, '$activationKey')";
  3. $query = mysql_query($sql) or die(mysql_error());
  4. $_SESSION['login'] == '$login';
  5. $subject = "Aktywacja konta - xxx.pl";
  6. $to = $email;
  7. $message = "Twój kod aktywacyjny to: \n";
  8. $message .= "$activationKey\n";
  9. $message .= "Kliknij w link poniżej aby dokonać rejestracji.\n";
  10. $message .= "http://xxx.pl/member.php?ref=activation&activationkey=$activationKey";
  11. mail($to, $subject, $message);
  12. //Niszczenie sesji
  13. unset($_SESSION['formlogin']);
  14. unset($_SESSION['formemail']);
  15. unset($_SESSION['formemailr']);
  16. unset($_SESSION['gadu']);
  17. unset($_SESSION['skype']);
  18. unset($_SESSION['tlen']);
  19. unset($_SESSION['www']);
  20. header("Location:http://xxx.pl/member.php?ref=activation");


Polaczenie z baza danych jest, do header ;ocation nie dochodzi gdyz pokazuje sie bialy obraz, a zadnego bledu nie ma: nie ma zadnej @ w kodzie, tabela na pewno istnieje. Prosze o pomoc smile.gif
Otex
Jeżeli nie wprowadza ci informacji do bazy to może sprawdź wpierw "echo $sql;" co on chce ci do bazy wprowadzić i spróbuj ręcznie wpisać to query - error z bazy mysql powinien wyjaśnić problem, tak czy inaczej jeżeli `id` masz jako auto_i~ to nie musisz tego wpisywać tak samo w values "0" jest niekonieczne on sam sobie wpisze
toaspzoo
może tak
  1.  
  2.  
  3. $sql = "INSERT INTO xxx(id, login, password, avatar, gender, name, gadu, tlen, email, www, joindate, lastlogin, activated, activationkey) VALUES (0, '$login', '$password', '', '', '', '', '', '$email', '', '$now', '$now', 0, '$activationKey')";
  4.  
  5. $query = mysql_query($sql) or die(mysql_error());


tabela xxx ?
Raven1122
nie nazwe tabeli tylko zmienilem na forum ;p

echo $sql; nic mi nie pokazuje, a ten kod co dostalem tez zwraca "biala sciane"
Niktoś
Może wklej całość kodu,bo może gdzie indziej problem leży.
A powiedz czy ty przyrównujesz w tym,czy przypisujesz?
Cytat
$_SESSION['login'] == '$login';

Jak przypisujesz to powinno być:
Cytat
$_SESSION['login'] = '$login';
Raven1122
  1. connect();
  2. $login = mysql_real_escape_string($_POST['login']);
  3. $password = mysql_real_escape_string($_POST['password']);
  4. $passwordr = mysql_real_escape_string($_POST['rpassword']);
  5. $email = mysql_real_escape_string($_POST['email']);
  6. $emailr = mysql_real_escape_string($_POST['remail']);
  7. //Activation Code
  8. $activationKey = uniqid('', true);
  9. //Aktualny Czas
  10. $now = date("Y-m-d H-i-s");
  11.  
  12. if(!empty($login) && !empty($password) && !empty($passwordr) && !empty($email) && !empty($emailr)){
  13. //Zapamietywanie danych
  14. $_SESSION['formlogin'] = $login;
  15. $_SESSION['formemail'] = $email;
  16. $_SESSION['formemailr'] = $emailr;
  17. $_SESSION['gadu'] = $gadu;
  18. $_SESSION['skype'] = $skype;
  19. $_SESSION['tlen'] = $tlen;
  20. $_SESSION['www'] = $www;
  21. $sql = "SELECT * FROM arena_users WHERE login='$login'";
  22. $query = mysql_query($sql);
  23. if(mysql_num_rows($query) == 0){
  24. if($password == $passwordr){
  25. if($email == $emailr){
  26. //Google reCaptcha
  27. require_once('/recaptchalib.php');
  28.  
  29.  
  30. $privatekey = "xxx";
  31. $resp = recaptcha_check_answer ($privatekey,
  32. $_SERVER["REMOTE_ADDR"],
  33. $_POST["recaptcha_challenge_field"],
  34. $_POST["recaptcha_response_field"]);
  35. //Sprawdzanie czy captcha jest dobrze przepisana
  36. if ($resp->is_valid) {
  37. $sql = "INSERT INTO xxx(id, login, password, avatar, gender, name, gadu, tlen, email, www, joindate, lastlogin, activated, activationkey) VALUES (0, '$login', '$password', '', '', '', '', '', '$email', '', '$now', '$now', 0, '$activationKey')";
  38. echo $sql;
  39. $query = mysql_query($sql) or die(mysql_error());
  40. $_SESSION['login'] == '$login';
  41. $subject = "Aktywacja konta - xxx.pl";
  42. $to = $email;
  43. $message = "Twój kod aktywacyjny to: \n";
  44. $message .= "$activationKey\n";
  45. $message .= "Kliknij w link poniżej aby dokonać rejestracji.\n";
  46. $message .= "http://dancearena.pl/member.php?ref=activation&activationkey=$activationKey";
  47. mail($to, $subject, $message);
  48. //Niszczenie sesji
  49. unset($_SESSION['formlogin']);
  50. unset($_SESSION['formemail']);
  51. unset($_SESSION['formemailr']);
  52. unset($_SESSION['gadu']);
  53. unset($_SESSION['skype']);
  54. unset($_SESSION['tlen']);
  55. unset($_SESSION['www']);
  56. header("Location:http://xxx.pl/member.php?ref=activation");
  57. }
  58.  
  59. else {
  60. //Jezeli nie to przenosi nas na ponizsza strone z bledem
  61. header("Location:http://www.xxx.pl/member.php?ref=register&error=captcha");
  62. }
  63. }
  64. else{
  65. header("Location:http://xxx.pl/member.php?ref=register&error=mail");
  66. }
  67. }
  68. else{
  69. header("Location:http://xxx.pl/member.php?ref=register&error=password");
  70. }
  71. }
  72. else{
  73. header("Location:http://xxx.pl/member.php?ref=register&error=nick");
  74. }
  75. }
  76. else{
  77. header("Location:http://dancearena.pl/member.php?ref=register&error=fill");
  78. }
Niktoś
Wydaje się w porządku ,a poprawiłeś to co wyżej napisałem?
Raven1122
juz poprawilem ale nic z tego ;p
Evinek
  1. $sql = "SELECT * FROM arena_users WHERE login='$login'";
  2. $query = mysql_query($sql);

Na
  1. $sql = "SELECT * FROM arena_users WHERE login='$login'";
  2. $query = mysql_query($sql) or die(mysql_error());


I spróbuj na początek każdego ifa dać echo '1'; itp.
Np takie coś:

  1. if(...){
  2. echo '1';
  3. if(...){
  4. echo '2';
  5. ...
  6. }
  7. else{
  8. echo '3';
  9. ...
  10. }
  11. ...
  12. }
  13. else{
  14. echo '4';
  15. ...
  16. }

Zobaczysz wtedy gdzie dochodzisz, a gdzie nie. Łatwiej będzie Ci znaleźć błąd.
Niktoś
Dobra już wiem w czym problem.Podejrzałem strukturę html na twojej stronie i ,chciałbym Ciebie zapytać jak chcesz przesyłać formularz bez tagu <form></form>?questionmark.gif
Raven1122
  1. connect();
  2. //Necessary changes
  3. $login = mysql_real_escape_string($_POST['login']);
  4. $password = mysql_real_escape_string($_POST['password']);
  5. $passwordr = mysql_real_escape_string($_POST['rpassword']);
  6. $email = mysql_real_escape_string($_POST['email']);
  7. $emailr = mysql_real_escape_string($_POST['remail']);
  8. //Activation Code
  9. $activationKey = uniqid('', true);
  10. //Aktualny Czas
  11. $now = date("Y-m-d H-i-s");
  12. echo 1;
  13. if(!empty($login) && !empty($password) && !empty($passwordr) && !empty($email) && !empty($emailr)){
  14. //Zapamietywanie danych
  15. $_SESSION['formlogin'] = $login;
  16. $_SESSION['formemail'] = $email;
  17. $_SESSION['formemailr'] = $emailr;
  18. $_SESSION['gadu'] = $gadu;
  19. $_SESSION['skype'] = $skype;
  20. $_SESSION['tlen'] = $tlen;
  21. $_SESSION['www'] = $www;
  22. $sql = "SELECT * FROM arena_users WHERE login='$login'";
  23. $query = mysql_query($sql) or die(mysql_error());
  24. echo 2;
  25. if(mysql_num_rows($query) == 0){
  26. echo 3;
  27. if($password == $passwordr){
  28. echo 4;
  29. if($email == $emailr){
  30. //Google reCaptcha
  31. require_once('/recaptchalib.php');
  32.  
  33.  
  34. $privatekey = "6Lc2Jc8SAAAAABQuXjIj_0sh9-Hg280NR-yUg1dQ";
  35. $resp = recaptcha_check_answer ($privatekey,
  36. $_SERVER["REMOTE_ADDR"],
  37. $_POST["recaptcha_challenge_field"],
  38. $_POST["recaptcha_response_field"]);
  39. //Sprawdzanie czy captcha jest dobrze przepisana
  40. echo 5;
  41. if ($resp->is_valid) {
  42. $sql = "INSERT INTO arena_users(id, login, password, avatar, gender, name, gadu, tlen, email, www, joindate, lastlogin, activated, activationkey) VALUES (0, '$login', '$password', '', '', '', '', '', '$email', '', '$now', '$now', 0, '$activationKey')";
  43. echo $sql;
  44. $query = mysql_query($sql) or die(mysql_error());
  45. $_SESSION['login'] == '$login';
  46. $subject = "Aktywacja konta - DanceArena.pl";
  47. $to = $email;
  48. $message = "Twój kod aktywacyjny to: \n";
  49. $message .= "$activationKey\n";
  50. $message .= "Kliknij w link poniżej aby dokonać rejestracji.\n";
  51. $message .= "http://dancearena.pl/member.php?ref=activation&activationkey=$activationKey";
  52. mail($to, $subject, $message);
  53. //Niszczenie sesji
  54. unset($_SESSION['formlogin']);
  55. unset($_SESSION['formemail']);
  56. unset($_SESSION['formemailr']);
  57. unset($_SESSION['gadu']);
  58. unset($_SESSION['skype']);
  59. unset($_SESSION['tlen']);
  60. unset($_SESSION['www']);
  61. header("Location:http://dancearena.pl/member.php?ref=activation");
  62. }
  63.  
  64. else {
  65. //Jezeli nie to przenosi nas na ponizsza strone z bledem
  66. header("Location:http://www.dancearena.pl/member.php?ref=register&error=captcha");
  67. }
  68. }
  69. else{
  70. header("Location:http://dancearena.pl/member.php?ref=register&error=mail");
  71. }
  72. }
  73. else{
  74. header("Location:http://dancearena.pl/member.php?ref=register&error=password");
  75. }
  76. }
  77. else{
  78. header("Location:http://dancearena.pl/member.php?ref=register&error=nick");
  79. }
  80. }
  81. else{
  82. header("Location:http://dancearena.pl/member.php?ref=register&error=fill");
  83. }


pokazuje tylko 1
Niktoś
No to masz już udzieloną przeze mnie odpowiedź.
Raven1122
Tyle ze nie bardzo widze tam blad ;p
Evinek
Mi pokazuje jakoś liczby: 1234.
Nie poprawnie jest przy sprawdzaniu czy emaile są takie same.
Daj za echo 4;
echo $email.'</br>'.$emailr;
Raven1122
Niktos, forym sa na www.dancearena.pl/member.php?ref=register, Evinek juz sprawdzam

123mstaniewski@canvar.pl
mstaniewski@canvar.pl po dodaniu tego co mowisz evinek
kkpre
na początku skryptu
Raven1122
123mstaniewski@canvar.pl
mstaniewski@canvar.pl

po wpisaniu tego co powyzej, czyli nic ;p
Niktoś
Według mnie masz błednie zaplanowaną strukturę html.
  1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  3. <meta http-equiv="Content-Language" content="pl" />
  4. <meta name="Robots" content="ALL" />
  5. <meta name="author" content="Nicco-WDS" />
  6. <meta name="keywords" content="" />
  7. <link rel="stylesheet" href="css/stylesheet.css" type="text/css" />
  8. <script type="text/javascript" src="http://www.google.com/recaptcha/api/js/recaptcha_ajax.js"></script>
  9.  
  10. <link rel="stylesheet" href="css/bar.css" type="text/css" /> <title>DanceArena</title>
  11. </head>
  12. <div id="fb-root"></div>
  13. <script>(function(d, s, id) {
  14. var js, fjs = d.getElementsByTagName(s)[0];
  15. if (d.getElementById(id)) return;
  16. js = d.createElement(s); js.id = id;
  17. js.src = "//connect.facebook.net/pl_PL/all.js#xfbml=1";
  18. fjs.parentNode.insertBefore(js, fjs);
  19. }(document, 'script', 'facebook-jssdk'));</script>
  20.  
  21. <div id="bar"><div id="barcontainer">
  22. <ul>
  23. <li>Witaj Gościu</li><li class="sep"></li>
  24. <li><a href="#">Rejestracja</a></li>
  25. <li class="sep"></li>
  26.  
  27. <li>Założono <b>0</b> Kont</li>
  28. <li class="sep"></li>
  29. <li>Napisano <b>1</b> Postów</li>
  30. <div class="logowanie">
  31. <li><input type="text" name="login" class="inputpom" value="Login..." onFocus="if(this.value=='Login...') this.value=''" onBlur="if(this.value=='') this.value='Login...'"/></li>
  32. <li><input type="password" name="password" value="Hasło" class="inputpom" onFocus="if(this.value=='Hasło') this.value=''" onBlur="if(this.value=='') this.value='Hasło'"/></li>
  33. <li><input type="submit" value="Zaloguj" class="buttonpom"/></li>
  34. </div>
  35. </ul>
  36.  
  37. </div></div>
  38. <div id="container">
  39. <div id="header"></div>
  40. <div id="menu">
  41. <ul>
  42.  
  43. <li><a href='/index.php'>Start</a></li><li><a href='#'>Słuchaj nas</a></li><li><a href='#'>Pozdrowienia</a></li><li><a href='#'>Ramówka</a></li><li><a href='/index.php?ref=team'>Redakcja</a></li><li><a href='/index.php?ref=promo'>Promocja</a></li><li><a href='/member.php?ref=people'>Społeczność</a></li><li><a href='http://forum.dancearena.pl'>Forum</a></li><li><a href='/chat.php'>Czat</a></li><li><a href='#'>Więcej</a></li></ul>
  44.  
  45. </div>
  46. <div id="staty">
  47. <ul>
  48. <li>
  49. <div class="tytul1">Nadaje:</div>
  50. <div class="tytul1">Audycja:</div>
  51. </li>
  52. <li>
  53. <div class="pole1">stats</div>
  54. <div class="pole2">Zenek nadaje!</div>
  55. </li>
  56. <li style="margin-left:10px;"><img src="/images/wmp.png" /></li>
  57. <li style="margin-left:10px;"><img src="/images/winamp.png" /></li>
  58.  
  59. <li><div class="buttonroz">Wyślij pozdrowienia</div>
  60. <div class="buttonroz">Player Online</div></li>
  61. <li><div class="buttonroz">Ramówka</div>
  62. <div class="buttonroz">Top Lista</div></li>
  63. <li style="margin-top:0px; margin-left:20px;"><img src="/images/club.png"></li>
  64. </ul>
  65. </div>
  66.  
  67. <div id="staty">
  68. <ul>
  69. <li>
  70. <div class="tytul1">Nadaje:</div>
  71.  
  72. <div class="tytul1">Audycja:</div>
  73. </li>
  74. <li>
  75. <div class="pole1">Nicco</div>
  76. <div class="pole2">Zenek nadaje!</div>
  77. </li>
  78. <li style="margin-left:10px;"><img src="/images/wmp.png" /></li>
  79. <li style="margin-left:10px;"><img src="/images/winamp.png" /></li>
  80. <li><div class="buttonpom2">Wyślij pozdrowienia</div>
  81. <div class="buttonpom2">Player Online</div></li>
  82. <li><div class="buttonpom2">Ramówka</div>
  83.  
  84. <div class="buttonpom2">Top Lista</div></li>
  85. <li style="margin-top:0px; margin-left:45px;"><img src="/images/mix.png"></li>
  86. </ul>
  87. </div>
  88. <div class="prawa">
  89. <div id="menutitle"></div>
  90. <div id="menucontent"></div>
  91. <div id="menutitleroz"></div>
  92. <div id="menucontent"><div class="fb-like-box" data-href="http://www.facebook.com/pages/DanceArena/315636381833612" data-width="300" data-height="400" data-show-faces="true" data-stream="false" data-header="true"></div></div>
  93. </div>
  94. <div class="left">
  95. <div id="contenttitle">Rejestracja</div>
  96. <div id="content">
  97.  
  98.  
  99. <legend>Pola Wymagane:</legend>
  100. <form action='member.php?ref=do_register' method='POST'>
  101. <tr><td colspan='2'>Login:</td></tr>
  102. <tr><td colspan='2'><input type='text' name='login' class='inputpom'></td></tr>
  103. <tr><td>Hasło:</td><td>Powtórz hasło:</td></tr>
  104. <tr><td><input type='password' name='password' class='inputpom'></td><td><input type='password' name='rpassword' class='inputpom'></td></tr>
  105. <tr><td>E-mail:</td><td>Powtórz E-mail:</td></tr>
  106. <tr><td><input type='text' name='email' class='inputpom'></td><td><input type='text' name='remail' class='inputpom'></td></tr>
  107. </fieldset><br />
  108.  
  109.  
  110. <legend>reCAPTCHA:</legend>
  111. <tr><td><script type='text/javascript'
  112. src='http://www.google.com/recaptcha/api/challenge?k=6Lc2Jc8SAAAAAN3NpTTYtCX-O0QBbBiHZUWr9HQE'>
  113. </script>
  114. <iframe src='http://www.google.com/recaptcha/api/noscript?k=6Lc2Jc8SAAAAAN3NpTTYtCX-O0QBbBiHZUWr9HQE'
  115. height='300' width='500' frameborder='0'></iframe><br>
  116. <textarea name='recaptcha_challenge_field' rows='3' cols='40'>
  117. <input type='hidden' name='recaptcha_response_field'
  118. value='manual_challenge'>
  119. </td></tr>
  120.  
  121. <center><input type='submit' value='Zarejestruj' class='buttonpom' /></center>
  122. </form>
  123.  
  124. </div>
  125. <div id="contenttitleroz"></div>
  126. <div id="content">
  127. <marquee direction="up" onMouseOver="this.stop()" onMouseOut="this.start()">
  128. <a href="http://cs-immortals.pl" target=_blank"><img src="http://cs-immortals.pl/images/banerimmor.gif" /></a><div style="margin-top:5px;"></div>
  129. </center>
  130. </marquee>
  131. </div>
  132.  
  133. </div>
  134.  
  135.  
  136. <div id="footer"></div>
  137. </div>
  138.  
  139.  
  140. </body>
  141. </html>


Masz zdublowane pola input o tych samych atrybutach name,gdzie jedne są w tagu <form> drugie poza:
Cytat
<input type="text" name="login" class="inputpom" value="Login..." onFocus="if(this.value=='Login...') this.value=''" onBlur="if(this.value=='') this.value='Login...'"/></li>
<li><input type="password" name="password" value="Hasło" class="inputpom" onFocus="if(this.value=='Hasło') this.value=''" onBlur="if(this.value=='') this.value='Hasło'"/></li>
<li><input type="submit" value="Zaloguj" class="buttonpom"/></li>

Z tego co wiem grupować(używać tej samej nazwy w atrybucie name)można w checkboxach ,radiobuttonach.
Nad poprawnością tej struktury to niech się także inni wypowiedzą ,bo uważam że to może powodować problemy.
GoOx
  1. mysql_query($sql, $zmienna_z_połączeniem_z_bazą);
nospor
@GoOx przeczytałbyś objawy problemu a nie strzelasz na ślepo

Tak, problemem tutaj jest struktura HTML przez co formularz źle wysyła dane. Musisz ją poprawić. Ot choćby taki kwiatek:
<table>
<form>
.....

Od kiedy w table można coś wstawić? Bo ja jedynie słyszałem, że można wstawić np. tr a nie form...

Co zas się tyczy wskazówki:
Cytat
error_reporting(E_ALL);
To może być za mało. Tu jest napisane jak w pełni ma to wyglądać:
Temat: Jak poprawnie zada pytanie
Wówcza na ekranie dostaniesz masę noticów, częśc z nich wynikać będzie z faktu, że dane postem się nie wysłały, bo masz złą strukture

ps: wypełniłeś w ogóle wszystkie pola przed wysłaniem formularza?
Raven1122
nospor, tak wypelnilem bo jak nie wypelnie to mnie przenosi na error=fill

No tak:


Notice: Use of undefined constant register - assumed 'register' in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 9

Notice: Use of undefined constant do_register - assumed 'do_register' in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 50

Notice: Undefined index: login in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 52

Notice: Undefined index: password in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 53

Notice: Undefined index: rpassword in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 54

Notice: Undefined index: email in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 55

Notice: Undefined index: remail in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 56

Warning: Cannot modify header information - headers already sent by (output started at /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html:9) in /home/jumpfm/domains/dancearena.pl/public_html/settings/member_settings.html on line 117

Warning: include() [function.include]: URL file-access is disabled in the server configuration in /home/jumpfm/domains/dancearena.pl/public_html/member.php on line 24

Warning: include(http://dancearena.pl/settings/member_settings.html) [function.include]: failed to open stream: no suitable wrapper could be found in /home/jumpfm/domains/dancearena.pl/public_html/member.php on line 24

Warning: include() [function.include]: Failed opening 'http://dancearena.pl/settings/member_settings.html' for inclusion (include_path='.:/usr/local/lib/php') in /home/jumpfm/domains/dancearena.pl/public_html/member.php on line 24

Dopiero wyprobowalem to co pisales nospor, tyle ze mysle ze polowe z tych bledow moge zignorowac np pierwsze 7, zadnego include tam nie mam ;p
(wymazalem)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.