Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
Ondřej Langr (andysekcze):12.5.2015 20:34

Ahoj,
Nevěděl by někdo jak napsat abych toto znegoval? Má to být řešené přes to else if, protože už fakt nevím :D

if($heslo == $potvrd_heslo)
   {
     if($nick AND $email)
       if($heslo_kontrola >= "8" AND $heslo_kontrola <= "20")
       {
                $heslo = md5(md5($heslo));
                include "./config.php";
               $ip = $_SERVER["REMOTE_ADDR"];
       $zapis = mysql_query("INSERT INTO uzivatele SET nick='$nick', heslo='$heslo', email='$email', ip='$ip', opravneni='1' ;");
       echo "Registrace proběhla v pořádku.";
               } else {
        echo("Nezadal jsi jméno nebo email.")
         }
       else if($heslo_kontrola ){
       echo "Heslo musí mít minimální počet 8 znaků a maximální počet 20 znaků.";
     }
   } else {
     echo "Hesla nejsou shodná!";

Předem děkuji

Odpovědět 12.5.2015 20:34
I have a charger. I have Note 7. Umh I haven't Note7.
Avatar
Odpovídá na Ondřej Langr (andysekcze)
Martin Konečný (pavelco1998):12.5.2015 21:48

Ahoj,

podívej se http://www.itnetwork.cz/php/tipy-dil1 na část "Příliš velké větvení".

Pokud to přepíšeš do toho způsobu, pak by kontrola délky hesla mohla vypadat takto:

$errors = array();
if ($_POST) {
  if (!$nick) {
    $errors[] = "Nebyl vyplněn nick";
  }
  if (!$email) {
    $errors[] = "Nebyl vyplněn email";
  }
  if (empty($errors)) {
    $passLength = strlen($pass);
    if ($passLength < 8 || $passLength > 20) {
      $errors[] = "Heslo 8-20 znaků";
    }

    if (empty($errors)) {
      $passHash = neco_lepsiho_nez_dvakrat_md5($pass);
      // DB INSERT atd
    }
  }
}
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 12.5.2015 21:48
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.