Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]sprawdzanie czy zmienna jest liczbą
Forum PHP.pl > Forum > Przedszkole
navaga
  1. [<?php
  2. if (empty($_GET["a"]) ||
  3.  
  4. empty($_GET["b"]))
  5. {
  6.  
  7. echo "<p style=\"color:red\">brak danych!</p>";
  8.  
  9. echo "<p><a href=\"wprowadz_liczby.html\">Powrót do formularza</a></p>";
  10.  
  11. }
  12. else if ((!(int)($_GET["a"])) || (!(int)($_GET["b"])))
  13. {
  14. echo "<p style=\"color:red\">to nie liczba!</p>";
  15.  
  16. echo "<p><a href=\"wprowadz_liczby.html\">Powrót do formularza</a></p>";
  17.  
  18. }


kalkulator , dane wprowadzane przez formularz *.html.
wprowadzając liczbę 0 wyskakuje komunikat brak danych , czyli 0 traktuje jako "pustą" wartość, dlaczego?
nikestylex7
http://pl.php.net/is_int

sprawdź to smile.gif
irmidjusz
i to: is_numeric
SaMi
Albo nawet cos prostego i własnego:
Sprawdzamy czy liczba jest poprawna, nieujemna, całkowita. Wykluczamy zera na początku czyli np. 0003, 000004, sprawdzamy typ i długość zmiennej

  1. function sprawdz($number)
  2. {
  3. if (
  4. is_string($number) &&
  5. (strlen($number) <= 10) &&
  6. preg_match('/^(([1-9][0-9]+)|([0-9]))$/', $number)
  7. ) {
  8. return true;
  9. } else {
  10. return false;
  11. }
  12. }
-navaga-
[php][/php]
dzałania mają być na liczbach całkowitych z zakresu -101 do 100
-navaga-
if(!empty($_GET['a']) AND !empty($_GET['b'])
AND is_numeric($_GET['a']) AND is_numeric($_GET['b'])){


tak też nie dzała nie chce przyjmaować zera!!!!!!!!!
nospor
No bo EMPTY dla 0 zwraca true...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.