Co je spatne na tomto SQL dotazu?

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

fu.cz
nováček
Příspěvky: 38
Registrován: 01 říj 2012 01:29

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od fu.cz »

vůbec nemám páru o jaké mezeře je řeč. Dát apostrof za uvozovky je blbost. Nevím čemu řikáš SQL příkaz jsou tam jen dva. Nevim co jsi v php napsal ale tohle bys moh vidět a rozpoznat.
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od CZechBoY »

něco málo píšu v php no
jestli hodláš slovně napadat tak mi nejdřív přesně řekni o jaké tečce je řeč a co v ní není v pořádku, mě se zdá, že je to syntakticky správně
apostrof se dává na uvození textu v sql, nevím co na tom nechápeš
edit: a je tam jeden sql dotaz
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
fu.cz
nováček
Příspěvky: 38
Registrován: 01 říj 2012 01:29

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od fu.cz »

neudy mu to opravil. Jde o to že ten konec není dopsán správně to je celé. Jesli použiju get nebo post je šumafuk. On si to bere někde nejspíš do backendu. Tady tahá USER NAME a PASS s kryptováním MD5 akorát není uveden klíč toho kryptování. Důležitý je jak to napsal a tam prostě byla chyba. Napsat v PHP "'neco'" je blbost.

ty sql jsou dva a to SELECT a FROM
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od CZechBoY »

není to blbost, apostrofy se zapíšou do výsledného řetězce, což je v tomto případě potřeba
jasně že měl konec sql dotazu špatně, neměl tam totiž apostrofy - a to jak otevírací tak uzavírací

pochopil jsem teda správně že ti šlo o ten apostrof na konci?
v tom případě nechápu proč tu řešíš pořád tu tečku :D
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
fu.cz
nováček
Příspěvky: 38
Registrován: 01 říj 2012 01:29

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od fu.cz »

.hash(md5,$_GET['heslo'] páč tam neni
a pardon ty dotazy na DB jsou 3
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od CZechBoY »

hledám kde tam chybí tečka a fakt nechápu kde chybí
u toho první parametru funkce hash mu ještě chybí uvozovky/apostrofy, tohle sice možná projde, ale při zapnutí notice to vyhodí notice, že nezná konstantu "md5"
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
wItt 94
Level 3
Level 3
Příspěvky: 521
Registrován: 18 čer 2009 14:39

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od wItt 94 »

HellCoder píše:

Kód: Vybrat vše

$data = mysql_fetch_array(mysql_query("SELECT * FROM uzivatele WHERE jmeno=".$_GET['jmeno']." AND heslo=".hash(md5,$_GET['heslo']) ));


Nevite nekdo co je na tom spatne? Diky moc
HellCoder



Nevím, proč chceš vypisovat zahashované heslo???
A chybí ti tam středník a uvozovky :D

$data = "mysql_fetch_array(mysql_query("SELECT * FROM uzivatele WHERE jmeno=".$_GET['jmeno']." AND heslo=".hash(md5,$_GET['heslo']))";";
:evil:
fu.cz
nováček
Příspěvky: 38
Registrován: 01 říj 2012 01:29

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od fu.cz »

to je moc... dva středníky.. co třeba přidat eště kluzák a práškovací letadlo
Uživatelský avatar
wItt 94
Level 3
Level 3
Příspěvky: 521
Registrován: 18 čer 2009 14:39

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od wItt 94 »

jinak..
$data="SELECT * FROM uzivatele WHERE jmeno LIKE '".($_GET['jmeno'])."' and heslo LIKE '".hash(md5,$_GET['heslo'])"';";

takto je to správně ..
:evil:
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od CZechBoY »

střední tam nemusí být, posílá to funkce, která umí zpracovat jen jeden sql příkaz, takže je jedno jestli tam je jeden nebo tisíc středníků

proč by měl vypisovat zahashované heslo, tohle je login...
nebude mít přece v databázi hesla v plaintext, sice md5 jsou už předpočítaný v celkem velký míře, ale i tak lepší něco než nic

fu: ascii art do databáze pošli :D

wItt: to je špatně, ten like není to stejný jako =
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
wItt 94
Level 3
Level 3
Příspěvky: 521
Registrován: 18 čer 2009 14:39

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od wItt 94 »

fu.cz píše:to je moc... dva středníky.. co třeba přidat eště kluzák a práškovací letadlo

SQL dotaz se ukončuje středníkem a proměnná taky

--- Doplnění předchozího příspěvku (09 Kvě 2013 23:21) ---

login, ahh :D
$jmeno= $_POST['jmeno'];
$heslo= md5($_POST['heslo']);
$query = mysql_query("SELECT * FROM `uzivatele` WHERE `jmeno` = '$jmeno' and `heslo` = '$heslo'") or die (mysql_error());
// Vybereme uživatele se zadaným jménem a heslem

hmm?
:evil:
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Co je spatne na tomto SQL dotazu?

Příspěvek od CZechBoY »

wItt: viz můj příspěvek
pokud máš posloupnost příkazů tak je nutné je oddělit středníkama, v případě jednoho příkazu je to volitelné
i v php je možné zapsat jeden příkaz bez středníku

edit:
wItt: takto to je syntakticky správně, ale ještě tam je sql injection
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Zamčeno
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Bluetooth:Bluetooth neni k dispozici v tomto zarizeni
    od byron » » v Vše ostatní (sw)
    1 Odpovědi
    5034 Zobrazení
    Poslední příspěvek od kecalek
  • Problém s DD příkazem, co dělám špatně?
    od drobino » » v LiNuX a ostatní alternativní OS
    7 Odpovědi
    10290 Zobrazení
    Poslední příspěvek od drobino

Zpět na „Programování a tvorba webu“