Skocz do zawartości
Zaloguj się, aby obserwować  
orton21

generuj

Polecane posty

Witam, chciałbym się dowiedzieć jak do takiego kodu

 

 

    <form method='get'>
        <input type='text' name='nick' />
        <button type='submit'>Generuj</button>
    </form>

 

 

Mógłbym zrobić, że jak ktoś nie wpiszę czegoś w polu ' nick ' to pojawi się komunikat,że pole nie może zostać puste oraz jeśli nie znajdzie takiego gracza w bazie to ,że taki nick nie istnieje. Pomógłby ktos ? :)

Edytowano przez orton21 (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość l3szcz

Pomyliłeś się wielce:

zamiast

<form method='get'>
        <input type='text' name='nick' />
        <button type='submit'>Generuj</button>
    </form>

 

powinno być:

<form method='post'>
        <input type='text' name='nick' />
        <button type='submit'>Generuj</button>
    </form>
<?php
$nick = $_POST['nick'];
if($_POST) {
if($nick == ''){
echo 'Zabraklo Twojego nicku! Dopisz go!';
} else {
// dalsza czesc instrukcji php
}
}
?>

 

Dziękuję za uwagę

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość l3szcz
if($nick == ''){

 

samo w sobie - jeśli puste :D

Wyrażenie jest 3 razy krótsze. Można zastosować isset, ale takiemu leniowi jak ja się czasem nie chce.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

No, Twój genialny kod wcaaale nie generuje notice

 

Notice: Undefined index: nick in /var/www/html/leszcz.php on line 6

 

Trudno by taki notic nie powstawał gdy się odwołujesz do czegoś nie sprawdzając, czy to w ogóle istnieje ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Poza tym jaki jest sens przepisywać zmienną

$nick = $_POST['nick'];

oraz tworzyć zagnieżdżone if-y

if($_POST) { if($nick == ''){

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
if(isSet($_POST['nick']) && empty($_POST['nick'])) echo 'Pole puste';

Nie ma potrzeby używać isset, wystarczy samo empty();

 

A variable is considered empty if it does not exist or if its value equals FALSE

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Tak po prawdzie to to obie funkcje się wyłożą jeżeli ktoś wpisze cyfrę 0 :)

 

 

Trzeba dołożyć strlen

if(isSet($_POST['nick']) && !strlen($_POST['nick'])) echo 'Pole puste';

 

empty nie jest wtedy potrzebne.

 

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Tak po prawdzie to to obie funkcje się wyłożą jeżeli ktoś wpisze cyfrę 0

Nic się nie wyłoży, autor nie określił minimalnej długości nicku więc można mieć śmiało nick "0" ;) ma nie być puste, więc nie jest :P

Edytowano przez xorg (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To odpal sobie skrypt

 

<?php
$_POST['nick']='0';
if(isSet($_POST['nick']) && empty($_POST['nick'])) echo 'Pole puste';
?>

 

i zobacz efekt.

 

zresztą cytowana wcześniej przez Ciebie dokumentacja mówi:

 

The following things are considered to be empty:

  • "" (an empty string)
  • 0 (0 as an integer)
  • 0.0 (0 as a float)
  • "0" (0 as a string)
  • NULL
  • FALSE
  • array() (an empty array)
  • $var; (a variable declared, but without a value)

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

Tak ale na telefonie nie chcialo mi sie tego znaku szukac hehe

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×