Kezdőoldal » Számítástechnika » Weblapkészítés » Mi a probléma a phpMyAdminnal?

Mi a probléma a phpMyAdminnal?

Figyelt kérdés

Ezt a hibakódot irja:

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Users\Felhasználó\Desktop\xampp\htdocs\login-form.php on line 10


ez a hozzátartozó html és php:


<?php

include('include/dbcon.php');


$username = $_POST['username'];

$password = $_POST['password'];


if ($username && $password) {


$sql = mysql_query("SELECT * FROM userdata WHERE username='$username' and password='$password'");

$rows= mysql_num_rows($sql);


if ($rows == 1) {

echo "Sikeres belépés!";

}

else echo "Hibás felhasználónév vagy jelszó!";


}

else echo "Minden mező kitöltése kötelező!";


?>


2016. dec. 9. 19:34
1 2
 1/12 anonim ***** válasza:

Hol van itt phpmyadmin?


mysql_query ad vissza false értéket, amit továbbad a mysql_num_rows-nak, ezt jelzi hibának

lefordítva: a SELECT hibás

irasd ki a mysql_query meghívása után:

echo mysql_error();

2016. dec. 9. 19:40
Hasznos számodra ez a válasz?
 2/12 anonim ***** válasza:
Ennek sok köze nincs a phpmyadminhoz.. AZ elsőnél a pont, írasd ki a hibát.
2016. dec. 9. 20:00
Hasznos számodra ez a válasz?
 3/12 A kérdező kommentje:
hogyan írjam ki? (most tanulom)
2016. dec. 9. 20:09
 4/12 anonim ***** válasza:
Van egy sor, amiben van a mysql_query, az ez utáni sorba beszúrsz egy üres sort és abba beírod azt a sort, amit írtam.
2016. dec. 9. 20:14
Hasznos számodra ez a válasz?
 5/12 A kérdező kommentje:

nem jó. a hibakód:

Table 'userdata.userdata' doesn't exist

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Users\Marci\Desktop\xampp\htdocs\login-form.php on line 11

2016. dec. 9. 20:17
 6/12 anonim ***** válasza:

Azt eddig is tudtuk, hogy nem jó, a kód pont azért kellett bele, hogy látszódjon mivel is van baja.

Az eredmény: userdata nevű adatbázisban nincs userdata nevű adattábla

2016. dec. 9. 20:25
Hasznos számodra ez a válasz?
 7/12 A kérdező kommentje:
Jaa, mostmárt éretm, köszönöm a segítséget!
2016. dec. 9. 20:27
 8/12 anonim ***** válasza:
"SELECT * FROM userdata WHERE username='.$username.' and password='.$password.'"
2016. dec. 10. 09:54
Hasznos számodra ez a válasz?
 9/12 anonim ***** válasza:
előző vagyok,bocs felejtsd el,amit írtam..:)
2016. dec. 10. 10:14
Hasznos számodra ez a válasz?
 10/12 anonim ***** válasza:

"$rows= mysql_num_rows($sql);"


Próbáld úgy, hogy:

$result = $conn->query($sql);


if ($result->num_rows) {

echo "Sikeres belépés!";

}

else {

else echo "Minden mező kitöltése kötelező!";

}


A $conn az a változó, amiben megadtad a mysqli adatokat, tehát servername, username, password, dbname. Nem tudom, hogy te hogyan nevezted el, a te változódat kell ennek a helyére írnod.


Ebben az esetben bevezeted egy result nevű objektumba az összes sort és oszlopot, amit a query lehozott. A num_rows esetében nem kell kiírni, hogy > 1, mert alapból úgy veszi, hogy az if-el ezt kérdezted le.


Nem mellesleg pedig vagy szűrd meg mysqli_real_escape_string-el a bemenetet, vagy használj paraméteres lekérdezést, mert így sql injectiont kaphatsz, azt meg nem akarsz. Beírnak or-al egy olyan feltételt, ami mindig teljesül, mondjuk 1=1, és beenged bármit írsz be jelszónak.

2016. dec. 10. 14:44
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!