Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]is_int(), Cos nie tak
Speedy90
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 26.08.2008

Ostrzeżenie: (0%)
-----


Witam, mam problem z ta funkcja.

  1. <?php
  2. extract($_POST);
  3.  
  4. if (is_int($a)){
  5. echo 'cos tam cos tam biggrin.gif';
  6. }
  7. else {
  8. echo 'nie jest to liczba';
  9. }
  10.  
  11.  
  12. <form action="'.$_SERVER['SELF'].'" method="post">
  13. <input type="text" name="a"/>
  14. <input type="submit" value="wyslij" name="potwierdzenie" />
  15. </form>;
  16. ?>


Czy podaje złe dane do niej??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
bim2
post
Post #2





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

Ostrzeżenie: (0%)
-----


jak mi się zdaje postem zawsze wysyła się string, ale nie jestem pewien. Daj
  1. <?php
  2. $a = (int)$a;
  3. ?>

I będzie git


--------------------
Go to the top of the page
+Quote Post
erix
post
Post #3





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Może to trochę nie na temat, ale odzwyczaj się od złych nawyków z register_globals i staraj się operować na $_POST...

A jest różnica między is_int" title="Zobacz w manualu PHP" target="_manual a is_numeric" title="Zobacz w manualu PHP" target="_manual.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
pyro
post
Post #4





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Emm... skad ci sie wziely linijki kodu od 13 do 16? Nie dostrzegasz tam błędu?


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
Speedy90
post
Post #5





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 26.08.2008

Ostrzeżenie: (0%)
-----


Cytat(pyro @ 19.11.2008, 22:45:39 ) *
Emm... skad ci sie wziely linijki kodu od 13 do 16? Nie dostrzegasz tam błędu?


To kod wycięty z całości i sklejony wiec to przypadek, a w ogóle to w tej sytuacji wyskoczyłby błąd którego nie ma . Ale dzięki zaraz sprawdzę wcześniejsze wypowiedzi.

Is_numeric działa. Dzięki.

Ten post edytował Speedy90 19.11.2008, 23:03:36
Go to the top of the page
+Quote Post
hostingekspert
post
Post #6





Grupa: Zarejestrowani
Postów: 51
Pomógł: 5
Dołączył: 12.04.2007
Skąd: 1=1

Ostrzeżenie: (0%)
-----


zamiast
if (is_int($a)) { .. } stosuj
if (is_int($_POST['a'])) { .. }

druga linia kodu byłaby zbędna

myśle ze rozwiązanie typu

  1. <?php
  2. if (intval($_POST['a']==0) echo 'zmienna jest tekstem lub ma wartosc 0 //wartosc 0 moze byc takze nie przyjmowana za poprawna';
  3. else echo 'zmienna jest liczba';
  4. ?>


takze powinno działac
Go to the top of the page
+Quote Post
erix
post
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A jak ktoś wpisze 0?

is_int" title="Zobacz w manualu PHP" target="_manual sprawdza, czy TYP ZMIENNEJ, to liczba całkowita, a is_numeric" title="Zobacz w manualu PHP" target="_manual, czy ciąg znaków, to liczba.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 23:51