Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z zapytaniem mysql
Throx
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2012

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


Witam. Robię prosty skrypt odpowiedzialny za logowanie, jednak mam błąd:
Kod
Query failed: 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 'WHERE username=Throx and user_password=207023ccb44feb4d7dadca005ce29a64' at line 1


Kod:
  1. $login = $_POST["username"];
  2. $haslo = $_POST["user_password"];
  3.  
  4. $haslo = md5($haslo);
  5.  
  6. $wynik=mysql_query("SELECT `username`,`user_password` FROM $phpbb_users WHERE
  7. username=$login and user_password=$haslo") or die('Query failed: ' . mysql_error() . "<br />\n$sql");


Prosiłbym o pomoc w rozwiązaniu problemu.

Ten post edytował Throx 17.02.2012, 21:01:11
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
pedro84
post
Post #2





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


  1. SELECT `username`,`user_password` FROM $phpbb_users WHERE username='$login' AND user_password='$haslo'

Podstawy podstaw...

Ten post edytował pedro84 17.02.2012, 21:03:55
Go to the top of the page
+Quote Post
Throx
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2012

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


Tak też już miałem, niestety nic to nie daje.
Go to the top of the page
+Quote Post
phpowiec84
post
Post #4





Grupa: Zarejestrowani
Postów: 101
Pomógł: 2
Dołączył: 10.12.2010

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


Cytat(Throx @ 17.02.2012, 21:20:14 ) *
Tak też już miałem, niestety nic to nie daje.


ależ daje napewno ...
zwraca błąd który wstawiony tutaj już na początku rozwiązałby problem ...
Go to the top of the page
+Quote Post
Throx
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2012

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


Cytat(phpowiec84 @ 17.02.2012, 21:22:04 ) *
ależ daje napewno ...
zwraca błąd który wstawiony tutaj już na początku rozwiązałby problem ...

Zwraca (prawie) taki sam błąd, jak poprzednio:
Kod
Query failed: 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 'WHERE username='Throx' AND user_password='207023ccb44feb4d7dadca005ce29a64'' at line 1
Go to the top of the page
+Quote Post
crocodillo
post
Post #6





Grupa: Zarejestrowani
Postów: 215
Pomógł: 44
Dołączył: 31.07.2011
Skąd: wrocław

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


  1. print "SELECT `username`,`user_password` FROM $phpbb_users WHERE username='$login' AND user_password='$haslo'"

zobacz jak wygląda zapytanie
Go to the top of the page
+Quote Post
daniel1302
post
Post #7





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

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


$phpbb_users zwraca jakiś syf bo błąd jest bezpośrednio przed WHERE
Go to the top of the page
+Quote Post
pedro84
post
Post #8





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


A co w ogóle w tej zmiennej masz?
Go to the top of the page
+Quote Post
Bags_Bunny
post
Post #9





Grupa: Zarejestrowani
Postów: 262
Pomógł: 39
Dołączył: 12.04.2004

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


Cytat(pedro84 @ 17.02.2012, 20:03:45 ) *
  1. SELECT `username`,`user_password` FROM $phpbb_users WHERE username='$login' AND user_password='$haslo'

Podstawy podstaw...

No aż przekląłem jak to zobaczyłem. Czy to słyszałeś o SQL Injection?

A co do problemu, to pewnie zmienna $phpbb_users jest pusta.
Go to the top of the page
+Quote Post
viking
post
Post #10





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Wiesz co? Wywal ten cały kod na śmietnik, zajrzyj do dokumentacji PDO albo np kursu w mojej stopce i przepisz to jak trzeba. Jak czasami patrzę co ludzie piszą za kod, albo jakie dostają podpowiedzi można się za głowę złapać.

  1. $sql = "SELECT username, user_password FROM $phpbb_users WHERE username=? and user_password=?";


To puścić do prepare, i później execute albo bindowanie parametrów.
Go to the top of the page
+Quote Post
wookieb
post
Post #11





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




1) Temat: Jak poprawnie zatytulowac watek
2) Wracaj do podstaw bo to żałosne, że pytasz o takie rzeczy.

Zamykam.
Go to the top of the page
+Quote Post

Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 21:27