Co je spatne na tomto SQL dotazu? Vyřešeno

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: říjen 12
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod fu.cz » 09 kvě 2013 22:55

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.

Reklama
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod CZechBoY » 09 kvě 2013 22:57

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: říjen 12
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod fu.cz » 09 kvě 2013 23:05

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: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod CZechBoY » 09 kvě 2013 23:08

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: říjen 12
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod fu.cz » 09 kvě 2013 23:11

.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: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod CZechBoY » 09 kvě 2013 23:14

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: červen 09
Pohlaví: Muž
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod wItt 94 » 09 kvě 2013 23:15

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: říjen 12
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod fu.cz » 09 kvě 2013 23:17

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: červen 09
Pohlaví: Muž
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod wItt 94 » 09 kvě 2013 23:18

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: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod CZechBoY » 09 kvě 2013 23:18

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: červen 09
Pohlaví: Muž
Stav:
Offline

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod wItt 94 » 09 kvě 2013 23:19

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: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Co je spatne na tomto SQL dotazu?

Příspěvekod CZechBoY » 09 kvě 2013 23:22

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


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Bluetooth:Bluetooth neni k dispozici v tomto zarizeni
    od byron » 02 bře 2025 09:21 » v Vše ostatní (sw)
    1
    3424
    od kecalek Zobrazit poslední příspěvek
    02 bře 2025 16:09
  • Problém s DD příkazem, co dělám špatně? Příloha(y)
    od drobino » 13 pro 2024 19:21 » v LiNuX a ostatní alternativní OS
    7
    5828
    od drobino Zobrazit poslední příspěvek
    22 pro 2024 12:47
  • PS5 se odmítá připojit k 5GHz síti - hlásí špatné heslo
    od Renee » 19 srp 2024 09:13 » v Vše ostatní (inet)
    14
    7606
    od Renee Zobrazit poslední příspěvek
    19 srp 2024 14:01

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

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host