Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Przypomnienie Hasla na E-mial-PROBLEM-
Forum PHP.pl > Forum > Przedszkole
Stron: 1, 2
swajt
Siema chcialem dodac do strony zmiana hasla i co z tego mi wyszlo http://cs-rekla.xaa.pl/automat1938/?page=haslo na rzut oka dobrzy wyglonda ale gdy wpisuje dane to wywala warning.
po 1. chcial bym zeby bylo trzeba byc zalogowanym zeby ten plik sie pokazal np zeby pisalo: Nie jestes zalogowany .
po 2. chcial bym zeby dalo rade zmienic haslo.

Prosze o pomoc!!!
A o to Blad Warning
Kod
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/csrekla/public_html/automat1938/strony/haslo.php on line 37
Login Konta lub stare hasło są nie pawidłowe!


Dam wam plik haslo.php.
  1. <?php
  2.  
  3. $polaczenie = @mysql_connect('localhost', 'user', 'haslo')
  4. or die('Brak połączenie z serwerem mysql. B��d: '.mysql_error());
  5.  
  6. $db = @mysql_select_db('baza', $polaczenie)
  7. or die('Nie połączyć sięz bazą danych. Błąd: '.mysql_error());
  8. $wynik = mysql_query("SELECT * FROM poster ORDER BY id ASC")
  9. or die('Błąd zapytania');
  10.  
  11. if(isset($_POST['wyslij'])){
  12. $id = $_POST['id'];
  13. $old = $_POST['old'];
  14. $password = $_POST['pass'];
  15. $rpt_password = $_POST['rpt_pass'];
  16. $db = mysql_select_db("account");
  17.  
  18. $msg['success'] = "Hasło zostało zmienione!";
  19. $msg['not_exist'] = "Login Konta lub stare hasło są nie pawidłowe!";
  20. $msg['not_some'] = "Podane hasła do siebie nie pasujł!";
  21. $msg['pola'] = "Wypełnij Pola !";
  22. if (strlen($old) < 1 || strlen($password) < 1 || strlen($rpt_password) < 1 ){
  23. echo"<p style='color:red;'><b>".$msg['pola']."</b></p>";
  24. }elseif($password!=$rpt_password){
  25. echo"<p style='color:red;'><b>".$msg['not_some']."</b></p>";
  26. }elseif(mysql_num_rows(mysql_query("SELECT * FROM account WHERE login='$id' AND password=PASSWORD('$old')")) > 0){
  27. $update = mysql_query("UPDATE account SET password=PASSWORD('$password') WHERE login='$id'") or die(mysql_error());
  28. }if($update==true){
  29. echo "<p><b>".$msg['success']."</b></p>";
  30. }else{
  31. echo"<p style='color:red;'><b>".$msg['not_exist']."</b></p>";
  32. }
  33.  
  34. }
  35. ?>
  36. <form method='post' action=''>
  37. <table border='0' align='center'>
  38. <tr>
  39. <td>Login: </td><td><input type="text" name="id"></td>
  40. </tr>
  41. <tr>
  42. <td>Stare hasło:</td><td><input type="password" name="old"></td>
  43. </tr>
  44. <tr>
  45. <td>Nowe hasło:</td><td><input type="password" name="pass"></td>
  46. </tr>
  47. <tr>
  48. <td>Powtórz hasło:</td><td><input type="password" name="rpt_pass"></td>
  49. </tr>
  50. <tr>
  51. <td>
  52. <input type="submit" name="wyslij" value="Zmień" />
  53. </td>
  54. </tr>
  55. </table>
  56. </form>
swajt
mam dodac plik "haslo.php" ?
com
tak miałeś zrobić:
  1. <?php
  2.  
  3. $polaczenie = @mysql_connect('localhost', 'user', 'haslo')
  4. or die('Brak połączenie z serwerem mysql. B��d: '.mysql_error());
  5.  
  6. $db = @mysql_select_db('csrekla_baza', $polaczenie)
  7. or die('Nie połączyć sięz bazą danych. Błąd: '.mysql_error());
  8. $wynik = mysql_query("SELECT * FROM poster ORDER BY id ASC")
  9. or die('Błąd zapytania');
  10.  
  11.  
  12.  
  13. if(isset($_POST['wyslij'])){
  14. $id = $_POST['id'];
  15. $old = $_POST['old'];
  16. $password = $_POST['pass'];
  17. $rpt_password = $_POST['rpt_pass'];
  18. $db = mysql_select_db("account");
  19.  
  20. $msg['success'] = "Hasło zostało zmienione!";
  21. $msg['not_exist'] = "Login Konta lub stare hasło są nie pawidłowe!";
  22. $msg['not_some'] = "Podane hasła do siebie nie pasujł!";
  23. $msg['pola'] = "Wypełnij Pola !";
  24. if (strlen($old) < 1 || strlen($password) < 1 || strlen($rpt_password) < 1 ){
  25. echo"<p style='color:red;'><b>".$msg['pola']."</b></p>";
  26. }elseif($password!=$rpt_password){
  27. echo"<p style='color:red;'><b>".$msg['not_some']."</b></p>";
  28. }elseif(mysql_num_rows(mysql_query("SELECT * FROM account WHERE login='$id' AND password=PASSWORD('$old')")) > 0){
  29. $update = mysql_query("UPDATE account SET password=PASSWORD('$password') WHERE login='$id'") or die(mysql_error());
  30. }if($update==true){
  31. echo "<p><b>".$msg['success']."</b></p>";
  32. }else{
  33. echo"<p style='color:red;'><b>".$msg['not_exist']."</b></p>";
  34. }
  35.  
  36. }
  37. ?>
  38. <form method='post' action=''>
  39. <table border='0' align='center'>
  40. <tr>
  41. <td>Login: </td><td><input type="text" name="id"></td>
  42. </tr>
  43. <tr>
  44. <td>Stare hasło:</td><td><input type="password" name="old"></td>
  45. </tr>
  46. <tr>
  47. <td>Nowe hasło:</td><td><input type="password" name="pass"></td>
  48. </tr>
  49. <tr>
  50. <td>Powtórz hasło:</td><td><input type="password" name="rpt_pass"></td>
  51. </tr>
  52. <tr>
  53. <td>
  54. <input type="submit" name="wyslij" value="Zmień" />
  55. </td>
  56. </tr>
  57. </table>
  58. </form>


Błąd masz tu:
  1. }elseif(mysql_num_rows(mysql_query("SELECT * FROM account WHERE login='$id' AND password=PASSWORD('$old')")) > 0){


sprawdź co zwraca mysql_query("SELECT * FROM account WHERE login='$id' AND password=PASSWORD('$old')") bo jak mniemam zapytanie jest blednę wink.gif
swajt
czyli co mam zrobic :< questionmark.gif

Najlepiej to by sie przydl nowy skrypt do zmiany hasla sad.gif
com
http://bit.ly/1awhoF8

Błąd wałkowany miliony razy, lub poprostu wystarczyło spojrzeć tu:

http://pl1.php.net/mysql_num_rows
swajt
ja i angielski haha.gif ;D

Kurde nwm co jest grane szukalem na necie skryptow zmiany hasla i nic :<
com
Jak się chce być programistą to angielski to podstawa wink.gif
http://pippinsplugins.com/change-password-form-short-code/
swajt
Sorka ale niechce zostac programistą ,tylko chce dodac do strony zmiane hasla ale jakiegos gotowca tylko zmienic dane do polaczenia i tyle


PROSZE MACIE JAKIES DOBRE SKRYPTY!! :<:<
com
no a co masz powyżej? Dałem Ci linka 3 sekundy w google...
swajt
Po angielsku jest wiec lipa niewiem co kaman :<
com
sciana.gif sciana.gif sciana.gif
http://bit.ly/1awkB7K

a następnym razem nie bierz się za coś czego ie rozumiesz, albo to zleć komuś wink.gif
swajt
Niema zadnych skryptow dzialajacych zawsze jakis warning i jakis blad

Widze ze nikt nie pomoze :<
Turson
Zawsze jakiś warning, bo nie wystarczy bezmyślnie skopiować, a pomyśleć i zmodyfikować pod własny gust
swajt
To podaj dzialajacy skrypt ZMIANY HASLA lub co zrobic zeby ten naprawic co podalem i zeby miec dostep do storny po zalogowaniu "Aby mieć dostęp do tej strony musisz być zalogowany/a."
com
no przecież Ci napisałem co masz zrobić, dałem gotowy kod na tej stronie po angielsku .. czego Ty jeszcze chcesz albo się na tym znasz albo zleć to komuś i nie zawracaj głowy...
swajt
i co to jest niby to??
  1. function pippin_change_password_form() {
  2. global $post;
  3.  
  4. if (is_singular()) :
  5. $current_url = get_permalink($post->ID);
  6. else :
  7. $pageURL = 'http';
  8. if ($_SERVER["HTTPS"] == "on") $pageURL .= "s";
  9. $pageURL .= "://";
  10. if ($_SERVER["SERVER_PORT"] != "80") $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
  11. else $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
  12. $current_url = $pageURL;
  13. endif;
  14. $redirect = $current_url;
  15.  
  16. ob_start();
  17.  
  18. // show any error messages after form submission
  19. pippin_show_error_messages(); ?>
  20.  
  21. <?php if(isset($_GET['password-reset']) && $_GET['password-reset'] == 'true') { ?>
  22. <div class="pippin_message success">
  23. <span><?php _e('Password changed successfully', 'rcp'); ?></span>
  24. </div>
  25. <?php } ?>
  26. <form id="pippin_password_form" method="POST" action="<?php echo $current_url; ?>">
  27. <fieldset>
  28. <p>
  29. <label for="pippin_user_pass"><?php _e('New Password', 'rcp'); ?></label>
  30. <input name="pippin_user_pass" id="pippin_user_pass" class="required" type="password"/>
  31. </p>
  32. <p>
  33. <label for="pippin_user_pass_confirm"><?php _e('Password Confirm', 'rcp'); ?></label>
  34. <input name="pippin_user_pass_confirm" id="pippin_user_pass_confirm" class="required" type="password"/>
  35. </p>
  36. <p>
  37. <input type="hidden" name="pippin_action" value="reset-password"/>
  38. <input type="hidden" name="pippin_redirect" value="<?php echo $redirect; ?>"/>
  39. <input type="hidden" name="pippin_password_nonce" value="<?php echo wp_create_nonce('rcp-password-nonce'); ?>"/>
  40. <input id="pippin_password_submit" type="submit" value="<?php _e('Change Password', 'pippin'); ?>"/>
  41. </p>
  42. </fieldset>
  43. </form>
  44. <?php
  45. return ob_get_clean();
  46. }
com
http://phppot.com/php/php-change-password-script/

Źle popatrzyłem tamto było do Wordpress sory wink.gif
swajt
No I dodalem prawie wszystko gra tylko jak naklikam Zmień bo sobie Spoloszczylem wink.gif to warning ;/
tu macie link do str : http://cs-rekla.xaa.pl/automat1938/?page=haslo

warning:
  1. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/csrekla/public_html/automat1938/strony/haslo.php on line 16
  2. Aktualne hasło jest nieprawidłowe


haslo.php

  1. <?php
  2. $_SESSION["userId"] = "24";
  3. $conn = mysql_connect("localhost","user","haslo");
  4. mysql_select_db("phppot_examples",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT *from users WHERE userId='" . $_SESSION["userId"] . "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currentPassword"] == $row["password"]) {
  9. mysql_query("UPDATE users set password='" . $_POST["newPassword"] . "' WHERE userId='" . $_SESSION["userId"] . "'");
  10. $message = "Hasło zostało zmienione";
  11. } else $message = "Aktualne hasło jest nieprawidłowe";
  12. }
  13. ?>
  14. <html>
  15. <head>
  16.  
  17. <link rel="stylesheet" type="text/css" href="styles.css" />
  18. <script>
  19. function validatePassword() {
  20. var currentPassword,newPassword,confirmPassword,output = true;
  21.  
  22. currentPassword = document.frmChange.currentPassword;
  23. newPassword = document.frmChange.newPassword;
  24. confirmPassword = document.frmChange.confirmPassword;
  25.  
  26. if(!currentPassword.value) {
  27. currentPassword.focus();
  28. document.getElementById("currentPassword").innerHTML = "Wymagany";
  29. output = false;
  30. }
  31. else if(!newPassword.value) {
  32. newPassword.focus();
  33. document.getElementById("newPassword").innerHTML = "Wymagany";
  34. output = false;
  35. }
  36. else if(!confirmPassword.value) {
  37. confirmPassword.focus();
  38. document.getElementById("confirmPassword").innerHTML = "Wymagany";
  39. output = false;
  40. }
  41. if(newPassword.value != confirmPassword.value) {
  42. newPassword.value="";
  43. confirmPassword.value="";
  44. newPassword.focus();
  45. document.getElementById("confirmPassword").innerHTML = "Nie ten sam";
  46. output = false;
  47. }
  48. return output;
  49. }
  50. </script>
  51. </head>
  52. <body>
  53. <form name="frmChange" method="post" action="" onSubmit="return validatePassword()">
  54. <div style="width:500px;">
  55. <div class="message"><?php if(isset($message)) { echo $message; } ?></div>
  56. <table border="0" cellpadding="10" cellspacing="0" width="500" align="center" class="tblSaveForm">
  57. <tr class="tableheader">
  58.  
  59. </tr>
  60. <tr>
  61. <td width="40%"><label>Aktualne hasło</label></td>
  62. <td width="60%"><input type="password" name="currentPassword" class="txtField"/><span id="currentPassword" class="required"></span></td>
  63. </tr>
  64. <tr>
  65. <td><label>Nowe hasło</label></td>
  66. <td><input type="password" name="newPassword" class="txtField"/><span id="newPassword" class="required"></span></td>
  67. </tr>
  68. <td><label>Potwierdź hasło</label></td>
  69. <td><input type="password" name="confirmPassword" class="txtField"/><span id="confirmPassword" class="required"></span></td>
  70. </tr>
  71. <tr>
  72. <td colspan="2"><input type="submit" name="submit" value="Zmień" class="btnSubmit"></td>
  73. </tr>
  74. </table>
  75. </div>
  76. </form>
  77. </body></html>
Turson
Zobacz, że w zapytaniu brakuje spacji *from i upewnij się, co siedzi w zmiennej $_SESSION['userId']
swajt
Niewiem jak sprawdzic

16 linia bledu jest to :


  1. $row=mysql_fetch_array($result);
Turson
  1. print_r($_SESSION);

i daj spację między "*" a "from"
swajt
dalem spacje i dalej to samo


  1. $result = mysql_query("SELECT * from users WHERE userId='" .$_SESSION['userId']. "'");



a z tym co mam zrobic?

  1. print_r($_SESSION);


i dalej wywala blad na


  1. $row=mysql_fetch_array($result);
Turson
Po prostu wrzuć do kodu
  1. print_r($_SESSION);

i wklej nam tutaj co się wyświetli
swajt
Jak dodalem

  1. <?php
  2. $_SESSION["userId"] = "24";
  3. $conn = mysql_connect("localhost","t","");
  4. mysql_select_db("phppot_examples",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT * from users WHERE userId='" .$_SESSION['userId']. "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currentPassword"] == $row["password"]) {
  9. mysql_query("UPDATE users set password='" . $_POST["newPassword"] . "' WHERE userId='" .$_SESSION['userId']. "'");
  10. $message = "Hasło zostało zmienione";
  11. } else $message = "Aktualne hasło jest nieprawidłowe";
  12. }
  13. print_r($_SESSION);
  14. ?>


to teraz pisze mi z phpmyadmin moje passy

  1. Array ( [userId] => 24 [login] => swajt [haslo] => 710d5f0585b540f23b5982a6bd948d66 [ranga] => 5 )


a jak dodalem tak

  1. <?php
  2. $_SESSION["userId"] = "24";
  3. $conn = mysql_connect("localhost","t","");
  4. mysql_select_db("phppot_examples",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT * from users WHERE userId='" .$_SESSION['userId']. "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currentPassword"] == $row["password"]) {
  9. mysql_query("UPDATE users set password='" . $_POST["newPassword"] . "' WHERE userId='" .$_SESSION['userId']. "'");
  10. $message = "Hasło zostało zmienione";
  11. } else $message = "Aktualne hasło jest nieprawidłowe";
  12. print_r($_SESSION);
  13. }
  14.  
  15. ?>



to piszee

  1. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/csrekla/public_html/automat1938/strony/haslo.php on line 16
  2. Array ( [userId] => 24 [login] => swajt [haslo] => 710d5f0585b540f23b5982a6bd948d66 [ranga] => 5 )


a jak dodalem tak

  1. <?php
  2. $_SESSION["userId"] = "24";
  3. $conn = mysql_connect("localhost","","");
  4. mysql_select_db("phppot_examples",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT * from users WHERE userId='" .$_SESSION['userId']. "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currentPassword"] == $row["password"]) {
  9. mysql_query("UPDATE users set password='" . $_POST["newPassword"] . "' WHERE userId='" .$_SESSION['userId']. "'");
  10. $message = "Hasło zostało zmienione";
  11. } else $message = "Aktualne hasło jest nieprawidłowe";
  12. print_r($_SESSION);
  13. }
  14.  
  15. ?>



to piszee

  1. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/csrekla/public_html/automat1938/strony/haslo.php on line 16
  2. Array ( [userId] => 24 [login] => swajt [haslo] => 710d5f0585b540f23b5982a6bd948d66 [ranga] => 5 )
  3. Aktualne hasło jest nieprawidłowe


i formularz pod spodem.

Wiec pomoze ktos:<:< ?
com
masz bazę danych która nazywa się phppot_examples ? bo sprawdziłem w skrypcie nie ma innych błędów wink.gif
vonski
Zaraz po tym:

  1. $row=mysql_fetch_array($result);


daj:



i napisz co się wyświetliło.
com
vonski

Wprowadziłem trochę w błąd bo to nie tu był problem źle popatrzyłem wink.gif problem jest że autor nie ma bazy danych która się tak nazywa...
swajt
no niemam w phpmyadmin w tabelach takie czegos phppot_examples






vonski jak dodalem to pisze


  1. Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/csrekla/public_html/automat1938/strony/haslo.php on line 17
  2. 1054: Unknown column 'userId' in 'where clause'
  3. Aktualne hasło jest nieprawidłowe


a pod spodem formularz
com
No to albo dodaj taka bazę albo w tej lini mysql_select_db("phppot_examples",$conn); wpisz własna nazwę i zacznie działać wink.gif
swajt
takie cos mam w user.sql i jak chce do phpmyadmin dodac to Błąd zapytanie sql i cala tabela na czerwono



  1. --
  2. -- Database: `phppot_examples`
  3. --
  4.  
  5. -- --------------------------------------------------------
  6.  
  7. --
  8. -- Table structure for table `users`
  9. --
  10.  
  11. CREATE TABLE IF NOT EXISTS `users` (
  12. `userId` int(8) NOT NULL AUTO_INCREMENT,
  13. `userName` varchar(55) NOT NULL,
  14. `password` varchar(55) NOT NULL,
  15. `displayName` varchar(55) NOT NULL,
  16. PRIMARY KEY (`userId`)
  17. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
  18.  
  19. --
  20. -- Dumping data for table `users`
  21. --
  22.  
  23. INSERT INTO `users` (`userId`, `userName`, `password`, `displayName`) VALUES
  24. (1, 'admin', 'admin123', 'Admin');
vonski
Czyli wszystko jasne. To zapytanie:

  1. "SELECT * from users WHERE userId='" .$_SESSION['userId']. "'"


nie ma prawa się wykonać, bo kolumna `userId` nie istnieje w tabeli `users`.
swajt
no to mam wpisana baze tu mysql_select_db("TU MOJA BAZA",$conn) i dalej to samo
com
to po kolei wejdź w phpadmin/Bazy danych -> utwórz nowa bazę danych o nazwie phppot_examples potem przejdź do niej daj import i dodaj ten plik users.sql

a to mysql_select_db("phppot_examples",$conn); pozostaw jak było wink.gif
vonski
Cytat(swajt @ 25.01.2014, 16:18:10 ) *
takie cos mam w user.sql i jak chce do phpmyadmin dodac to Błąd zapytanie sql i cala tabela na czerwono



  1. --
  2. -- Database: `phppot_examples`
  3. --
  4.  
  5. -- --------------------------------------------------------
  6.  
  7. --
  8. -- Table structure for table `users`
  9. --
  10.  
  11. CREATE TABLE IF NOT EXISTS `users` (
  12. `userId` int(8) NOT NULL AUTO_INCREMENT,
  13. `userName` varchar(55) NOT NULL,
  14. `password` varchar(55) NOT NULL,
  15. `displayName` varchar(55) NOT NULL,
  16. PRIMARY KEY (`userId`)
  17. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
  18.  
  19. --
  20. -- Dumping data for table `users`
  21. --
  22.  
  23. INSERT INTO `users` (`userId`, `userName`, `password`, `displayName`) VALUES
  24. (1, 'admin', 'admin123', 'Admin');


A jak jesteś już w phpMyAdmin to wybierasz jakąś bazę? Po lewej stronie jest ramka, w ramce spis istniejących baz danych.
Czy po prostu odpalasz phpMyAdmin, dajesz od razu 'Import' (czy tam 'SQL') i wybierasz ten plik users.sql?

@com, wydaje mi się że ta baza "phppot_examples" istnieje. Jakby nie istniała to mysql_error() zwróciłby raczej coś w stylu 'No database seleted', a nie 'Unknown column...'. Aczkolwiek to wszystko tak na wróżkarski instynkt wink.gif
com
sprawdziłem to u siebie na localhost wprawdzie mam inne php i mi zwraca troszkę inny komunikat ale dokładnie tu leży problem wink.gif
swajt
wlazlem do phpmyadmin->baza->Import wybralem users.sql i wywala na czerwono

  1. Błąd
  2. Zapytanie SQL:
  3.  
  4. --
  5. -- Dumping data for table `users`
  6. --
  7. INSERT INTO `users` ( `userId` , `userName` , `password` , `displayName` )
  8. VALUES ( 1, 'admin', 'admin123', 'Admin' ) ;
  9.  
  10.  
  11. MySQL zwrócił komunikat: Dokumentacja
  12.  
  13. #1054 - Unknown column 'userId' in 'field list'





jak utworzylem tabele phppot_examples w bazie mojej potem przechodze do import wybieram ten plik i wywala to samo...
com
  1. <?php
  2. $_SESSION["userId"] = "24";
  3. $conn = mysql_connect("localhost","root","haslo");
  4. mysql_select_db("reset",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT *from users WHERE userId='" . $_SESSION["userId"] . "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currentPassword"] == $row["password"]) {
  9. mysql_query("UPDATE users set password='" . $_POST["newPassword"] . "' WHERE userId='" . $_SESSION["userId"] . "'");
  10. $message = "Password Changed";
  11. } else $message = "Current Password is not correct";
  12. }
  13. ?>
  14. <html>
  15. <head>
  16. <title>Change Password</title>
  17. <link rel="stylesheet" type="text/css" href="styles.css" />
  18. <script>
  19. function validatePassword() {
  20. var currentPassword,newPassword,confirmPassword,output = true;
  21.  
  22. currentPassword = document.frmChange.currentPassword;
  23. newPassword = document.frmChange.newPassword;
  24. confirmPassword = document.frmChange.confirmPassword;
  25.  
  26. if(!currentPassword.value) {
  27. currentPassword.focus();
  28. document.getElementById("currentPassword").innerHTML = "required";
  29. output = false;
  30. }
  31. else if(!newPassword.value) {
  32. newPassword.focus();
  33. document.getElementById("newPassword").innerHTML = "required";
  34. output = false;
  35. }
  36. else if(!confirmPassword.value) {
  37. confirmPassword.focus();
  38. document.getElementById("confirmPassword").innerHTML = "required";
  39. output = false;
  40. }
  41. if(newPassword.value != confirmPassword.value) {
  42. newPassword.value="";
  43. confirmPassword.value="";
  44. newPassword.focus();
  45. document.getElementById("confirmPassword").innerHTML = "not same";
  46. output = false;
  47. }
  48. return output;
  49. }
  50. </script>
  51. </head>
  52. <body>
  53. <form name="frmChange" method="post" action="" onSubmit="return validatePassword()">
  54. <div style="width:500px;">
  55. <div class="message"><?php if(isset($message)) { echo $message; } ?></div>
  56. <table border="0" cellpadding="10" cellspacing="0" width="500" align="center" class="tblSaveForm">
  57. <tr class="tableheader">
  58. <td colspan="2">Change Password</td>
  59. </tr>
  60. <tr>
  61. <td width="40%"><label>Current Password</label></td>
  62. <td width="60%"><input type="password" name="currentPassword" class="txtField"/><span id="currentPassword" class="required"></span></td>
  63. </tr>
  64. <tr>
  65. <td><label>New Password</label></td>
  66. <td><input type="password" name="newPassword" class="txtField"/><span id="newPassword" class="required"></span></td>
  67. </tr>
  68. <td><label>Confirm Password</label></td>
  69. <td><input type="password" name="confirmPassword" class="txtField"/><span id="confirmPassword" class="required"></span></td>
  70. </tr>
  71. <tr>
  72. <td colspan="2"><input type="submit" name="submit" value="Submit" class="btnSubmit"></td>
  73. </tr>
  74. </table>
  75. </div>
  76. </form>
  77. </body></html>

Tu masz kod do php, a tu baza
http://www.speedyshare.com/s9qhS/reset.sql

Teraz robisz tak phpmyadmin/inport i ten plik który podsyłam wink.gif
swajt
Wszystko zrobilem jak chciales i wywala blad

  1. Błąd
  2. Zapytanie SQL:
  3.  
  4. --
  5. -- Baza danych: `reset`
  6. --
  7. CREATE DATABASE IF NOT EXISTS `reset` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
  8.  
  9.  
  10. MySQL zwrócił komunikat: Dokumentacja
  11.  
  12. #1044 - Access denied for user 'csrekla'@'localhost' to database 'reset'




Niewiem co jest grane :<
com
Gdzie Ty to wrzucasz? na localhosta czy jakiś serwer? bo nie masz uprawnień do tworzenia baz danych
swajt
do localhosta jak niemam uprawnien O.o



aaa db wiem dlaczego niemoge utworzyc nowej bazy danych bo jak kupowalem hosting www to tylko z 1 baza danych
com
no to się pytam... no to co to za hosting?
swajt
proserver.pl ale tylko za 3zl MINI kupilem go tylko tak do testu jest on z 1 bazy danych.

Jak bym kupil STANDARD to bym mial 2 baze danych i 2 kona ftp a tak to mam po 1
com
No to w takim razie musisz dodać to do istniejącej już bazy danych, być może inport też tam nie działa dla tabel spróbuj stworzyć ja ręcznie w phpmyadmin smile.gif
swajt
czyli mam utowrzyc recznie tabele phppot_examples w bazie danych ?
com
tabele users smile.gif phppot_examples to nazwa bazy danych smile.gif
swajt
czyli w mysql_select_db("MOJA BAZA",$conn); i tam w bazie danych wejsc w users i w sql i wykonac zapytanie ? biggrin.gif

  1. CREATE TABLE IF NOT EXISTS `users` (
  2. `userId` int(8) NOT NULL AUTO_INCREMENT,
  3. `userName` varchar(55) NOT NULL,
  4. `password` varchar(55) NOT NULL,
  5. `displayName` varchar(55) NOT NULL,
  6. PRIMARY KEY (`userId`)
  7. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;




a i ja w users mam dane z forum a w uzytkownicy mam dane z strony automata tam gdzie chce dodac zmiane hasla snitch.gif

wiec co mam dalej zrobic??
com
czyli dobrze rozumiem masz już w bazie danych tabele users?
swajt
ta mam w bazie danych juz tabele users ale tam sa konta z fora czyli to nie bdz to mam jeszcze tabele uzytkownicy i tam sa konta z automata tam gdzie chce miez skrypt zmienienia hasla


com
no to trzeba było tak od razu... to w takim razie musisz trochę zmodyfikować już istniejąca tabele żeby pasowała do tego skryptu wink.gif
swajt
to tylko powiec co pozmieniac biggrin.gif

Zapytanie zrobilem od nowa i wykasowalem tabele uzytkownicy pozmienialem w haslo.php i w nowehaslo.php tzn chcialem zrobic przypomnienie hasla z tego skryptu : http://www.forumweb.pl/porady-i-tutoriale-...nie-hasla,68870


Wszystko poszlo okey prawie nawet bledy nie wyskakuja jak chce zmienic hasla to pisze ze jest "Aktualne hasło jest nieprawidłowe" a pisze poprawne haslo.A w przypomnij haslo "Informacje o nowym haśle zostaly wyslane na Twój adres e-mail." i na e-mail nic nie przychodzi a jak wpisze inny email kt nie jest w bazie pisze ze e-mail nie istnieje czyli prawie wszystko okey dam wam teraz pliczki na dol:

Zapytanie.sql
  1. CREATE TABLE `uzytkownicy` (
  2. `ID` int(8) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  3. `nick` VARCHAR( 50 ) NOT NULL ,
  4. `haslo` VARCHAR( 32 ) NOT NULL ,
  5. `email` VARCHAR( 50 ) NOT NULL ,
  6. `activation_key` TEXT NOT NULL ,
  7. `displayName` varchar(55) NOT NULL ,
  8. `ranga` INT NOT NULL ,
  9. `adverty` TEXT NOT NULL ,
  10. `ip` TEXT NOT NULL ,
  11. `ban` TEXT NOT NULL ,
  12. `kupil` TEXT NOT NULL ,
  13. `data` DATETIME NOT NULL
  14. ) ENGINE = MYISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;


haslo.php
  1. <?php
  2. $_SESSION["ID"] = "24";
  3. $conn = mysql_connect("localhost","","");
  4. mysql_select_db("",$conn);
  5. if(count($_POST)>0) {
  6. $result = mysql_query("SELECT * from users WHERE ID='" . $_SESSION["ID"] . "'");
  7. $row=mysql_fetch_array($result);
  8. if($_POST["currenthaslo"] == $row["haslo"]) {
  9. mysql_query("UPDATE users set haslo='" . $_POST["newhaslo"] . "' WHERE ID='" . $_SESSION["ID"] . "'");
  10. $message = "Hasło zostało zmienione";
  11. } else $message = "Aktualne hasło jest nieprawidłowe";
  12. }
  13. ?>
  14. <html>
  15. <head>
  16. <link rel="stylesheet" type="text/css" href="styles.css" />
  17. <script>
  18. function validatehaslo() {
  19. var currenthaslo,newhaslo,confirmhaslo,output = true;
  20.  
  21. currenthaslo = document.frmChange.currenthaslo;
  22. newhaslo = document.frmChange.newhaslo;
  23. confirmhaslo = document.frmChange.confirmhaslo;
  24.  
  25. if(!currenthaslo.value) {
  26. currenthaslo.focus();
  27. document.getElementById("currenthaslo").innerHTML = "Wymagany";
  28. output = false;
  29. }
  30. else if(!newhaslo.value) {
  31. newhaslo.focus();
  32. document.getElementById("newhaslo").innerHTML = "Wymagany";
  33. output = false;
  34.  
  35. }
  36. else if(!confirmhaslo.value) {
  37. confirmhaslo.focus();
  38. document.getElementById("confirmhaslo").innerHTML = "Wymagany";
  39. output = false;
  40.  
  41. }
  42. if(newhaslo.value != confirmhaslo.value) {
  43. newhaslo.value="";
  44. confirmhaslo.value="";
  45. newhaslo.focus();
  46. document.getElementById("confirmhaslo").innerHTML = "Nie Ten sam";
  47. output = false;
  48. else { //Jeśli nie został wciśnięty przycisk wyświetlamy formularz
  49.  
  50.  
  51. }
  52. </script>
  53. </head>
  54. <body>
  55. <form name="frmChange" method="post" action="" onSubmit="return validatehaslo()">
  56. <div style="width:500px;">
  57. <div class="message"><?php if(isset($message)) { echo $message; } ?></div>
  58. <table border="0" cellpadding="10" cellspacing="0" width="500" align="center" class="tblSaveForm">
  59. <tr class="tableheader">
  60. </tr>
  61. <tr>
  62. <td width="40%"><label>Aktualne hasło</label></td>
  63. <td width="60%"><input type="haslo" name="currenthaslo" class="txtField"/><span id="currenthaslo" class="required"></span></td>
  64.  
  65. </tr>
  66. <tr>
  67. <td><label>Nowe hasło</label></td>
  68. <td><input type="haslo" name="newhaslo" class="txtField"/><span id="newhaslo" class="required"></span></td>
  69.  
  70. </tr>
  71. <td><label>Potwierdź hasło</label></td>
  72. <td><input type="haslo" name="confirmhaslo" class="txtField"/><span id="confirmhaslo" class="required"></span></td>
  73.  
  74. </tr>
  75. <tr>
  76. <td colspan="2"><input type="submit" name="submit" value="Zmień" class="btnSubmit"></td>
  77. </tr>
  78. </table>
  79. </div>
  80. </form>
  81. </body></html>


nowehaslo.php
  1. <?php
  2. /*
  3.  Password recovery v0.2 by DarV from darv.xaa.pl
  4.  Released under Creative Commons BY-SA 3.0 license:
  5. */
  6.  
  7. require("strony/db.php");
  8.  
  9. $email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
  10. $domena = $_SERVER['HTTP_HOST'];
  11. $skrypt= $_SERVER['SCRIPT_NAME'];
  12. $parametry = $_SERVER['QUERY_STRING'];
  13. $address = $domena . $skrypt. '?' . $parametry;
  14. $headers = 'From: NADAWCA' . "\r\n" .
  15. 'Reply-To: NADAWCA' . "\r\n" .
  16. 'X-Mailer: PHP/' . phpversion();
  17.  
  18. if(isset($_GET['key'])) {
  19. }
  20. if(isset($key)) {
  21. $checkkey = 'SELECT * FROM uzytkownicy WHERE activation_key="'.$key.'"';
  22. $ck = mysql_fetch_row(mysql_query($checkkey));
  23. if(!$ck[1]) {
  24. Nieprawidłowe lub używany klucz aktywacyjny.
  25. ';
  26. }
  27. }
  28. if(isset($key)) {
  29. $checkkey = 'SELECT * FROM uzytkownicy WHERE activation_key="'.$key.'"';
  30. $rekord = mysql_fetch_assoc(mysql_query($checkkey));
  31. $uzytkownicyemail = $rekord['email'];
  32. $new = uniqid();
  33. $newhash = sha1($new);
  34. $query = "UPDATE uzytkownicy SET password='".$newhash."' WHERE activation_key='".$key."';";
  35. mysql_query ($query);
  36. $to = ''.$uzytkownicyemail.'';
  37. $subject = 'Nowe Hasło';
  38. $message = 'Witamy, aktualne hasło: '.$new.'';
  39. mail($to, $subject, $message, $headers);
  40. $finish = "UPDATE uzytkownicy SET activation_key='0' WHERE email='".$uzytkownicyemail."';";
  41. mysql_query($finish);
  42. echo 'Nowe hasło zostało wysłane na podany adres e-mail.';
  43. }
  44. if(empty($email)) {
  45. echo '<form method="post" action="#">
  46. Twój e-mail: <input type="text" name="email"/>
  47. <input type="submit" value="Wyślij hasło"/>';
  48. }
  49. if(isset($email) and !filter_var("$email", FILTER_VALIDATE_EMAIL)) {
  50. echo 'Ten adres e-mail jest nieprawidłowy.';
  51. }
  52. if(isset($email)) {
  53. $checkemail = mysql_query('SELECT * FROM uzytkownicy WHERE email="'.$email.'"');
  54. $checkemail = mysql_fetch_row($checkemail);
  55. if(!$checkemail[1]) {
  56. E-mail nie istnieje';
  57. }
  58. elseif($checkemail[1]) {
  59. $new = uniqid();
  60. $query = "UPDATE uzytkownicy SET activation_key='".$new."' WHERE email='".$email."';";
  61. mysql_query ($query);
  62. $to = ''.$email.'';
  63. $subject = 'Nowe hasło';
  64. $message = 'Witam, jeśli chcesz zmienić hasło na: http://'.$address.'key='.$new.'';
  65. mail($to, $subject, $message, $headers) or die ("Nie można wysyłać wiadomości e-mail");
  66. echo 'Informacje o nowym haśle zostaly wyslane na Twój adres e-mail.';
  67. }
  68. }
  69. ?>



PROSZE O POMOC!! Podajcie co mam zmienic/poprawic lub dodac.Bo prawie wszystko jest okey tylko niechce jak juz mowilem wyslac emaila i zmienic hasla.
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.