Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Sprawdzenie danych przed dodaniem do MySQL
ghastblood
post
Post #1





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Witam,

Wyskakuje mi taki błąd
mysql_num_rows(): supplied argument is not a valid MySQL result resource in ...
gdy dodaje zawodnika do bazy danych

  1. <?php
  2. require_once "conn.php";
  3.  
  4. echo "<form acton='index.php' method='POST'>";
  5. echo "Imie: <input type='text' name='imie'><br>";
  6. echo "Nazwisko: <input type='text' name='nazwisko'><br>";
  7. echo "Email: <input type='text' name='email'><br>";
  8. echo "<input type='submit' value='Dodaj'><br>";
  9. if(!empty($_POST["imie"]) && !empty($_POST["nazwisko"]) &&!empty($_POST["email"]) ) { //sprawdza czy wszystkie pola zostaly uzupelnione
  10. if(mysql_num_rows(mysql_query("select * from zawodnik where zawodnik_imie='".htmlspecialchars($_POST["imie"])."', zawodnik_nazwisko='".htmlspecialchars($_POST["nazwisko"])."', zawodni_email='".htmlspecialchars($_POST["email"])."'")) <1) { //sprawdz czy nie istniej juz ktos o takim loginie
  11. mysql_query("INSERT INTO zawodnik VALUES(NULL, '".mysql_real_escape_string(htmlspecialchars($_POST['imie']))."', '".mysql_real_escape_string(htmlspecialchars($_POST['nazwisko']))."', '".mysql_real_escape_string(htmlspecialchars($_POST['email']))."')"); //dodaje uzytkownia do bazy danych
  12. echo "Dodano<br>";
  13. } else echo "zawodnik juz istnieje w bazie<br>";
  14. } else echo "Nie uzupelniono wszystkich pol<br>";
  15. ?>


Wiem że błąd musi być gdzieś w tym kodzie
  1. if(mysql_num_rows(mysql_query("select * from zawodnik where zawodnik_imie='".htmlspecialchars($_POST["imie"])."', zawodnik_nazwisko='".htmlspecialchars($_POST["nazwisko"])."', zawodni_email='".htmlspecialchars($_POST["email"])."'")) <1) { //sprawdz czy nie istniej juz ktos o takim loginie


ale nie potrafię go znaleźć dopiero się uczę.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
kapuch
post
Post #2





Grupa: Zarejestrowani
Postów: 389
Pomógł: 69
Dołączył: 26.04.2010
Skąd: Łódź

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


Po kolejnym warunku uzywaj AND (gdy wszystkie warunki maja byc spelnione), lub OR (gdy spelniony ma byc jeden z warunkow), a nie przecinkow winksmiley.jpg
czyli:
  1. if(mysql_num_rows(mysql_query("select * from zawodnik where zawodnik_imie='".htmlspecialchars($_POST["imie"])."' AND zawodnik_nazwisko='".htmlspecialchars($_POST["nazwisko"])."' AND zawodni_email='".htmlspecialchars($_POST["email"])."'")) <1) { //sprawdz czy nie istniej juz ktos o takim loginie



Ten post edytował kapuch 16.07.2010, 23:12:30


--------------------
Nie chce "Pomógł", aktualna ilość (69) w pełni mnie satysfakcjonuje :)
Go to the top of the page
+Quote Post
ghastblood
post
Post #3





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


niestety dalej ten sam błąd

mysql_num_rows(): supplied argument is not a valid MySQL result resource in...
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Masz taką fajną funkcję zwaną mysql_error, poza tym - Twój skrypt jest dość dziurawy.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
ghastblood
post
Post #5





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


a mógł byś powiedzieć jak mogę zastosować funkcję mysql_error, dopiero się uczę i nie wiem jak mógł bym zabezpieczyć ten kod.
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Przejrzyj przyklejone wątki, bo było to omawiane dziesiątki razy.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
ghastblood
post
Post #7





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


dzięki temat do zamknięcia.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 05:21