Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Relacje
skala91
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 4.03.2010

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


Witam, stworzyłem w bazie mysql baze gdzie znajdują się 2 tabele

users:

  1. CREATE TABLE `users` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `nick` text collate utf8_polish_ci NOT NULL,
  4. `nazwa` text collate utf8_polish_ci NOT NULL,
  5. `id_hasla` int(11) NOT NULL,
  6. PRIMARY KEY (`id`),
  7. KEY `haslo` (`id_hasla`)
  8. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=2 ;


hasla:

  1. CREATE TABLE `hasla` (
  2. `id_hasla` int(11) NOT NULL AUTO_INCREMENT,
  3. `haslo` varchar(50) collate utf8_polish_ci NOT NULL,
  4. PRIMARY KEY (`id_hasla`)
  5. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=2 ;


Chciałbym powiązać ze sobą tabele id_hasla.

Jak to zrobić oraz jak później te dane odczytać, zapisać nowe oraz jak sprawdzić(IMG:style_emoticons/default/questionmark.gif) Chcę stworzyć logowanie oraz rejestrację i przy rejestracji aby hasło zapisywało się w tabeli hasla a w tabeli users aby w kolumnie id_hasla pokazywal sie identyfikator hasla. W logowaniu abym mógł te dane wyczytywać a potem w edycji profilu zmieniać. Proszę o pomoc i dziękuję. Jestem początkujący jeżeli chodzi o MySQL, jednak wypisywać, edytować, dodawać umiem ale nie w tej sytuacji :/

ps. Chciałbym powiązać te tabele (jak jest taka możliwość) przez kod php :]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
skala91
post
Post #2





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 4.03.2010

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


no ok dzieki (IMG:style_emoticons/default/winksmiley.jpg)

Proszę o pomoc :/ Mam 2 pliki (IMG:style_emoticons/default/smile.gif)

start.php

  1. <?php
  2. include('funkcje.php');
  3. ?>
  4. <div id="logowanie"><?php logowanie(); ?></div>
  5.  
  6.  
  7. <?php
  8. $polaczenie = mysql_connect('localhost', 'root', '') or die("Brak poł?czenia: " . mysql_error());
  9. $baza = mysql_select_db('shoutbox2',$polaczenie) or exit("Nie wybrano bazy, bł?d: " . mysql_error());
  10.  
  11. if ($_POST['Logowanie']) {
  12.  
  13. $login=$_POST['nick'];
  14. $haslo=$_POST['haslo'];
  15.  
  16. $rezultat="SELECT * FROM dane WHERE login='$login' AND haslo='$haslo'";
  17. $log = mysql_query($zapytanie);
  18.  
  19. if (mysql_num_rows($log) > 0)
  20. echo "<p>Logowanie przebiegło poprawnie!</p>";
  21.  
  22. else {
  23. echo "<p>Brak użytkownika w bazie, zarejestruj się aby kontynłować! <br> <a id=\"ok\" href=\"start.php\">Rejestracja</a></p>";
  24. }
  25. }
  26.  
  27. ?>


funkcje.php

  1. <?php
  2. function logowanie()
  3. { ?>
  4. <div id="logowanie"><b>Logowanie</b>:
  5. <form method="post" action="logowanie.php">
  6. <table>
  7. <tr>
  8. <td>Nick</td>
  9. <td><input type="text" name="nick"></td>
  10. </tr>
  11.  
  12. <tr>
  13. <td>Hasło</td>
  14. <td><input type="password" name="haslo"></td>
  15. </tr>
  16.  
  17. <tr>
  18. <td>Zaloguj</td>
  19. <td><input type="submit" name="Logowanie" value="Logowanie"></td>
  20. </tr>
  21. </table>
  22. </form>
  23. <?php } ?>


Moja tabelka w mysql wygląda tak:

  1. CREATE TABLE `dane` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `login` text collate utf8_polish_ci NOT NULL,
  4. `nazwa` text collate utf8_polish_ci NOT NULL,
  5. `haslo` text collate utf8_polish_ci NOT NULL,
  6. `data` datetime NOT NULL,
  7. PRIMARY KEY (`id`)
  8. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=6 ;


I gdy chcę się zalogować (dane już mam wprowadzone do bazy) wyskakuje mi komunikat:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\WebServ\httpd-users\shoutbox\logowanie.php on line 24

Czy ktoś wie o co chodzi? Podczas rejestracji nie czepia się momentu zliczania :/

ja myślę że błąd leży w tej linijce:

  1. $rezultat="SELECT * FROM dane WHERE login='$login' AND haslo='$haslo'";


A co wy na to??

Ten post edytował skala91 19.06.2010, 18:37:35
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.10.2025 - 13:44