Php Kontakt if funkcija

Kako da sredim da ako je u input napisano manje od 1 slova da izbacuje error i da se nemoze poslat poruka. Ja sam napravio ispise mi mora biti duze od 1 slova a posalje poruku evo kod pa ako mi ko moze pomoc tako i za poruku ako je manje od 1 nemoj poslat

evo koda:

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];

$to = '[email protected]';
$subject = 'Naziv poruke';
$message = 'Ime: '.$name.' E-mail: '.$email.' Poruka: '.$message;	
$headers = 'From:  [email protected]' . "\r\n";

if (filter_var($email, FILTER_VALIDATE_EMAIL)) { 
    mail($to, $subject, $message, $headers); 
	echo "Poslano"; 
}else{
	echo "Nije poslano";
}

Ja sam ovo pokusavo …

if(strlen($_POST['name']) < 1  || strlen($_POST['message']) < 1 ==FALSE){
echo "Nije poslano";
}else{
echo "poslano";
}
if(strlen($message) > KOLIKO_ZNAKOVA) {
//ima vise od toliko znakova, radi sta zelis
}
else {
//premalo znakova
}

“zerocoolos” ti je napisao dobro, ali s obzirom na put kojim si krenuo nekako nisam siguran da si shvatio što je mislio. Pa evo u nastavku kod:

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];

$to = '[email protected]';
$subject = 'Naziv poruke';
$message = 'Ime: '.$name.' E-mail: '.$email.' Poruka: '.$message;	
$headers = 'From:  [email protected]' . "\r\n";

if(strlen($message) > 1)
{
    if (filter_var($email, FILTER_VALIDATE_EMAIL))
    { 
        mail($to, $subject, $message, $headers); 
	echo "Poslano"; 
    }
    else
    {
      echo "Nije poslano";
    }
else
{
    echo "Premalo znakova";
}

Inače čisto da znaš if-funkcija možeš imati koliko hoćeš, slažeš ih na način da ono što prvo želiš provjeriti stavljaš kao prvu provjeru i tako nižeš.

if( $a > 2)
{
    if( $b < 3)
    {
        echo "i prvi ($a > 2) i drugi ($b < 3) uvjet je ispunjen pa se ispisuje ovo";
    }
    else
    {
        echo "prvi ($a > 2) uvjet je ispunjen, ali drugi ($b < 3) nije pa se ispisuje ovo";
    }
}
else
{
    echo "prvi ($a > 2) uvjet nije ispunjen pa se drugi ($b < 3) niti ne ispituje nego se ispisuje ovo";
}

Nadam se da je barem malo jasnije.

meni se cini dobro napisan ovaj kod ali nekuzim zasto izbacuje error na ovom else

else
{
    echo "Premalo znakova";
}

Sta mislis dal bi bila bolja opcija sa alert ?

Pogledaj još jedanput kod i gledaj gdje su zagrade { otvorene i } zatvorene pa će ti biti jasno kada će koji ispis biti.

Možeš napraviti i pomoću javascript ili jquery, to je tako reći elegantnije riješenje, ali će biti više koda. To je sada na tebi odluka.

Ako želiš baš cijepidlačit možeš napraviti preko jquery da su ti svi inputi disable dok ne upišeš u određen input dovoljan broj znakova.

E ovo mi se svida sa hidden sam kak to napravit jel ima neko simple rijesenje gdje

Naravno, moze se postaviti i DIV umesto alert boxa, jer ovo treba samo da da informaciju :slight_smile: Mislim da je dobra praksa, napraviti DIV tag pored polja koje prijavi gresku i u njemu ispisati poruku, kao sto je na vecini sajtova.


Copyright © 2022 WM Forum - AboutContact