kontrola hesla v návštěvní knize
12 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
vůbec nevim kde jsem udělal chybu =((( normálně nick, kerej je zakázanej, tak na něj lze psát, a nic se nestane. na normální nick lze taky psát. stránka: http://tarantino.wz.cz/index.php?page=g_book jak je to v databázi: http://tarantino.wz.cz/db.jpg kód vám možná řekne víc: /*------- ------------- neexistuje ta přezdívka už? ----------- --------*/ unset($jed); $dotaz = mysql_query("SELECT prezdivka FROM sprava"); while($vypis = mysql_fetch_array($dotaz)) { $velkyjmeno = strToUpper($_POST['jmeno']); $vypis[prezdivka] == strToUpper($vypis[prezdivka]); if ($velkyjmeno == $vypis[prezdivka]){ $passwd = mysql_result(mysql_query("SELECT heslo FROM sprava WHERE prezdivka = '". $_POST['jmeno'] ."' LIMIT 1"), 0, 0); if(md5($_POST['heslo']) != $passwd) { echo(" <script type=\"text/javascript\"> alert('špatně zadané heslo'); </script> "); $jed = 0; } else {//běží když je heslo v pořádku $jed = 1; } } else {//else běží, když se přezdívka NEshoduje s žádným hledaným jménem if(!isset($jed)){ $jed = 1; } } }//konec cyklu hledající zakázaná jména unset($dotaz); unset($vypis); /*------- --------- nastavení proměnných, úprava textu ---------- --------*/ if ($jed == 1) { . . . odeslání a tak } . . .
-
tak už mi to někdo (+-) poradil... teď to funguje, je to řešený jinak. pro zájemce: $dotaz1 = mysql_query("SELECT * FROM sprava WHERE prezdivka LIKE '". $_POST['jmeno'] ."'"); $dotaz2 = mysql_query("SELECT * FROM sprava WHERE prezdivka LIKE '". $_POST['jmeno'] ."' AND heslo LIKE '". md5($_POST['heslo']) ."'"); if(mysql_num_rows($dotaz1) == 0){ $jed = 1; } else { if(mysql_num_rows($dotaz2)) { $jed = 1; } else { $jed = 0; } }
-
Jejda .. ;) hezkej fígl .. ale nechápu použití LIKE ? (pokud se dotyční jmenuje "Tonda" tak budu přece hledat "Tonda" a ne "Toník") .. jsem lama .. já se to doučim :D ..
-
LIKE jsem nikdy předtím neslyšel ale je to prakticky místo "=" a liší se to od "=" tím, že to nehledí na velká, malá písmena.
-
Jasně .. vím co je to LIKE a k čemu se používá .. jen mi to přijde trochu .. k ničemu .. pokud se někdo jmenuje "Roman" tak proč bude psát "roman" ? chápeš :) ? to je jedno .. hlavně že ti to funguje ..
-
a u LIKE se muzou pouzit zastupne znaky, resp. %
-
2 donny: nechápu. cojsou zástupné znaky? jako něco na způsob regulárního výrazu?
-
Marcus: ne, spis neco na zpusob "*" a "?" ve Windows u nazvu souboru (resp. (.*) a (.) u regexp). http://dev.mysql.com/doc/refman/4.1/en/string-comparison-functions.html --- With LIKE you can use the following two wildcard characters in the pattern: % Matches any number of characters, even zero characters _ Matches exactly one character mysql> SELECT 'David!' LIKE 'David_'; -> 1 mysql> SELECT 'David!' LIKE '%D%v%'; -> 1 To test for literal instances of a wildcard character, precede it by the escape character. If you do not specify the ESCAPE character, ‘\’ is assumed.
-
áha, myslim, že chápu. nechápu tam jenom "even zero characters" -> to je včetně nulovejch znaků, nebo krom? nebo co?
-
tady LIKE nemusi vubec byt. Staci si v dotazu prevest jmeno na male a bude to mnohem rychlejsi
-
24k: jj, to bylo jen takove odboceni. Marcus: i s nima.
-
2 24k: musi, pač kdo řiká, že jsou v databázi malejma písmenama? btw. kdybyste mi chtěli ještě helfnout tak pls. tady: http://forum.builder.cz/read.php?20,1544606