Autor | Zpráva | ||
---|---|---|---|
Martin02 Profil |
#1 · Zasláno: 2. 2. 2013, 20:17:23
Ahoj,
potřebuju vkládat do mysql data z textového pole. Vše ok, ale když chci přidat uvozovku, nepřidá se vůbec nic. Jak mám tedy dávat uvozovky to buňky v mysql? Datový typ je text a kódování utf8_general_ci. Děkuji |
||
abc Profil |
#2 · Zasláno: 2. 2. 2013, 20:22:39
Ošetři řetězec mysql_real_escape_string
|
||
Martin02 Profil |
#3 · Zasláno: 3. 2. 2013, 11:41:04
abc:
díky moc |
||
juriad Profil |
#4 · Zasláno: 3. 2. 2013, 11:53:17
Obecně, cokoli vkládáš do databáze bys měl prohnat tou odkázanou funkcí. Nikdy nevěř uživatelovi/útočníkovi.
Jedinou výjimkou jsou čísla, ale u nich si musíš být absolutně jistý, že to čísla jsou. U nich stačí přetypování, například: (int) $GET['cislo'] .
Ukázka děravého přihlašování: mysql_query("SELECT * FROM uzivatele WHERE jmeno='".$_POST['jmeno']."' AND heslo='".$_POST['heslo']."'"; ' OR 1=1 -- Poznámka k otázce: je to ještě horší, následující vstupy ti také budou dělat problémy (bez ošetření): -- (dvě pomlčky), # (mřížka), /* (lomeno hvězdička). |
||
Micruss Profil |
#5 · Zasláno: 3. 2. 2013, 12:45:53
juriad:
Heslo zaheshovat nejlíp md5(); a Nick: mysql_real_escape_string a myslím si, že je dobře ošetřený vstup ;-) |
||
Davex Profil |
#6 · Zasláno: 3. 2. 2013, 12:57:27
Micruss:
„Heslo zaheshovat nejlíp md5();“ Bezpečnější by byl osolený hash sha1() .
Přikládám odkazy na zajímavé čtení, kdyby to někoho zajímalo: • šifrování hesla • Registrace uživatele - Jak nejlépe zahashovat heslo? • Ochrana hesla saltom |
||
Časová prodleva: 11 let
|
0