[PHP/MySql] Nie dostaje wyniku w SELECT'cie


(MrGalek) #1

Witam
Zaczynam bawić się PHPem i mam taki problem że nie dostaje żadnego wyniku na stronie. Sprawdzałem “echem” jakie generowane jest zapytanie i w phpmyadmin śmigało. Nie mam już do tego siły. Dostaje tylko dwa Warningi :mysqli_query() expects parameter 1 to be mysqli, string given in C:\xampp\htdocs\api\login.php on line 20 oraz
mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\api\login.php on line 22
Googlowałem ale nie mogę nic znaleźć
Oto mój kod:

Sformatowany blok tekstu poprzedź 4 spacjami
<?php
if (!$link = mysqli_connect('localhost', 'root', '')) {
    echo 'Nie można nawiązać połączenia z bazą danych';
   exit;
}
if (!mysqli_select_db($link, 'tohomedb')) {
   echo 'Nie można wybrać bazy danych';
  exit;
}
//////////////////////////////////
$mail = $_GET['mail'];
$pass = $_GET['pass'];
$hash=md5($pass);
$sql = "SELECT * FROM users";
$result = mysqli_query($sql,$link);
while($rek = mysqli_fetch_array($result)) { 
    echo $rek['mail']."<br />"; 
} 
?>

Tutaj dla celów testowych dałem prostego Selecta ale też nie działa
Ktoś wie ocb ? Dodam że w tabeli users jest oczywiście kolumna mail


(MrGalek) #2

Jestem mośkiem wystarczy $result = mysqli_query($sql,$link); zamienić na $result = mysqli_query($link,$sql)…


(ziggurad) #3

@MrGalek wiem że nie tego dotyczy Twój problem ale proponuję od razu zainteresować się PDO.

Nie używa się już funkcji mysql* bo nie są do końca bezpieczne :wink:

Kod wykorzystujący PDO jest bezpieczniejszy i uniezależniasz się od konkretnej bazy danych :wink:


(hindus) #4

Ale czasem PDO jest też dużo wolniejszy. Warto znać oba i stosować zależnie od potrzeb :slight_smile:


(ziggurad) #5

Nie, mysql* się nie stosuje :wink:


(hindus) #6

Jest różnica między mysql* a zacytowanym przez Ciebie mysql_*

W mysql* jest również mysqli_* które jest ciągle oficjalnie wspierane.

#gwiazdkimajaznaczenie :stuck_out_tongue:


(MrGalek) #7

dzięki @hindus i @ziggurad przyjże się temu co tutaj podaliście :slight_smile: