Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Błąd 1064 przy mysql_query()
Forum PHP.pl > Forum > Przedszkole
kondziusob
Witam serdecznie
Z góry informuję, że jestem tu nowy i jeśli źle umieściłem temat to proszę go przenieść i przepraszam za kłopot.
Mam drobny problem, gdyż - kiedy pragnąłem napisać prościutki wręcz skrypt logowania w php - powstało coś takiego:
  1. <?php session_start();
  2. mysql_connect('host', 'user', 'haslo', 'idbazy') or die('blad polaczenia z baza!');
  3. $login = mysql_real_escape_string($_POST['login']);
  4. $password = md5($_POST['password']);
  5. $password = mysql_real_escape_string($password);
  6. $sql = mysql_query("SELECT FROM `user` WHERE `login` = '$login' AND `password` = '$password'");
  7. echo mysql_errno() . ": " . mysql_error() . "\n";
  8. if ($sql == 1)
  9. {
  10. $_SESSION['user'] = $login;
  11. $_SESSION['auth'] = TRUE;
  12. echo '<meta http-equiv="refresh" content="1; URL=panel.html">';
  13. }
  14. else
  15. {
  16. echo 'Pomyliłeś się w loginie/haśle. <a href="login.html"><button>Jeszcze raz</button></a>';
  17. }

Jak również stosowny formularz w pliku login.html, tabela `user` w bazie danych z polami `id` (auto_increment, not null, smallint 6), `login` (utf8_bin, not null, varchar 128) i `password` (utf8_bin, not null, varchar 128) z odpowiednimi wartościami. I gdy już przyszło co do czego, zapodałem dane do formularza i klikam zaloguj, wyskakuje błąd od mysql_error: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM `user` WHERE `login` = '(tu wpisany login)' AND `password` = '(tu wpisane hasło zaszyfrowane przez md5)' at line 1 (jak również przycisk i "Pomyliłeś się..."). I tu moje pytanie, co robię nie tak? Dziękuję wszystkim za pomoc smile.gif
mmmmmmm
Nie podałeś, co pobierasz... SELECT * FROM ...
kondziusob
Racja, nie zauważyłem. Tylko teraz kolejny błąd: 1046: No database selected, a zdaje mi się, że dokładnie mu wszystko podałem
Kshyhoo
MySQL != MySQLi
valkirek
  1. $connect=@mysql_connect($mysql_host, $mysql_login, $mysql_password);
  2. $connect=@mysql_query("SET NAMES utf8");
  3. $connect=@mysql_query("SET CHARACTER_SET utf8_unicode_ci");
  4. $connect=@mysql_select_db($mysql_data);
Turson
@valkired ekstra rozwiązanie sciana.gif
kondziusob
A jakbym zrobił:
  1. mysqli_connect('host', 'user', 'haslo', 'idbazy') or die('blad polaczenia z baza!');
?
Tylko wtedy już wszystko będę musiał zmienić
[edit]
No dobra, teraz dorzuciłem mysql_select_db(), mysql_error() nie wyrzuca ani jednego błędu, ale najwyraźniej mysql_query(SELECT * FROM...) nie zwraca 1, bo otrzymuję komunikat o błędnym haśle
[edit]
Już działa, przed mysql_query() dorzuciłem mysql_num_rows()
Dziękuję, temat do zamknięcia
valkirek
Cytat(Turson @ 3.04.2015, 09:29:02 ) *
@valkired ekstra rozwiązanie sciana.gif


co chcesz od tego rozwiazania? podalem tylko przyklad ze brakuje mysql_select_db()
Turson
Cytat(valkirek @ 3.04.2015, 10:12:01 ) *
co chcesz od tego rozwiazania? podalem tylko przyklad ze brakuje mysql_select_db()

Chodzi o wszechobecne @
valkirek
oj tam, czepiasz sie biggrin.gif
Turson
Jak ktoś wie świadomie co robi, to ok, ale polecać @ początkującym to słabe, bo później przylatują na forum z tekstem "kod nie działa" i nie dość, że nie ma error_reporting to jeszcze same @
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.