Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Mac adres karty sieciowej
olowek
post 31.07.2006, 15:28:53
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 6.07.2005

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


Witam,


Czy jest jakaś funkcja, klasa do sprawdzania poprawności mac adresu karty sieciowej w formularzu?

d.

Ten post edytował olowek 1.08.2006, 09:52:51
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
Lee
post 31.07.2006, 16:39:34
Post #2





Grupa: Zarejestrowani
Postów: 319
Pomógł: 0
Dołączył: 11.04.2006
Skąd: Chojnów

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


php działa po stronie serwera więc raczej czegoś takiego nie ma (nie jestem tego pewien w 100%)

btw. poczytaj o $_SERVER
http://pl2.php.net/manual/en/reserved.variables.php
i na webcity.pl też jest conieco opisane
http://webcity.pl/webcity/artykuly.php/t/4


--------------------
Nie pomagam w sprawach php na GG i PW od tego jest forum!
Go to the top of the page
+Quote Post
olowek
post 31.07.2006, 17:49:02
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 6.07.2005

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


Cytat(Lee @ 31.07.2006, 15:39 ) *
php działa po stronie serwera więc raczej czegoś takiego nie ma (nie jestem tego pewien w 100%)

btw. poczytaj o $_SERVER
http://pl2.php.net/manual/en/reserved.variables.php
i na webcity.pl też jest conieco opisane
http://webcity.pl/webcity/artykuly.php/t/4


Może rozszerze swoje pytanie winksmiley.jpg

Mam formularz w ktorym wpisuje nr seryjny komputera jego ip adres i mac adres karty sieciowej , a wszystko w celach ewidencyjnych i porzadkowych. Taka baza posiadanych komputerów.
I chiałbym aby w formularzu w jakiś sensowny sposob sprawdzac czy użykownik dopisujący kolejny komputer do tej bazy, poprawnie wpisał mac adres karty sieciowej, tzn. aby nie popełnił błędu i zamiast FF wpisał FZ itd.

d.
Go to the top of the page
+Quote Post
nospor
post 1.08.2006, 07:50:29
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Czyby google znalo odpowiedz?
http://www.google.com/search?client=opera&...-8&oe=utf-8
smile.gif

proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
olowek
post 1.08.2006, 11:17:47
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 6.07.2005

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


OK ale dalej nie mogę sobie poradzić
warunek sprawdzajacy mi nie działa, może kotś zerknąć gdzie popełniłem błąd?
  1. <?php
  2. $mac_adres='00:FF:15:51:C1:00'; 
  3. if (!eregi("^[0-9A-Z]+(-[0-9A-Z]+)+(-[0-9A-Z]+)+(-[0-9A-Z]+)+(-[0-9A-Z]+)+(-[0-9A-Z]+)$",$mac_adres)) return 0;
  4. ?>


i jaki bym nie podał adres to zawsze mam false sad.gif

d
Go to the top of the page
+Quote Post
rama
post 1.08.2006, 15:17:23
Post #6





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 25.02.2006
Skąd: Trójmiasto

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


Patrząc na Twój "eregi syntax", to jest wyłącznie poprawny dla adresów w stylu "00-00-00-00-00-00", więc dlatego wyrzuca Ci false smile.gif

Poniżej "uzupełniłem" eregi syntax, który jest poprawny dla większości seperatorów (- ; : .)
  1. <?php
  2. $mac_adres='00:FF:15:51:C1:00';
  3. if (!ereg('^([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)$',$mac_adres)) return 0;
  4. ?>


Ten post edytował rama 1.08.2006, 15:18:38
Go to the top of the page
+Quote Post
olowek
post 2.08.2006, 09:25:51
Post #7





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 6.07.2005

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


Cytat(rama @ 1.08.2006, 14:17 ) *
Patrząc na Twój "eregi syntax", to jest wyłącznie poprawny dla adresów w stylu "00-00-00-00-00-00", więc dlatego wyrzuca Ci false smile.gif

Poniżej "uzupełniłem" eregi syntax, który jest poprawny dla większości seperatorów (- ; : .)
  1. <?php
  2. $mac_adres='00:FF:15:51:C1:00';
  3. if (!ereg('^([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)$',$mac_adres)) return 0;
  4. ?>



Czy sprawdziłeś ten kod? Bo u mnie dalej nie działa poprawnie sad.gif

d
Go to the top of the page
+Quote Post
rama
post 2.08.2006, 22:20:08
Post #8





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 25.02.2006
Skąd: Trójmiasto

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


Hmm, sprawdzałem, prawie zawsze to robie przed publikacją jakiegokolwiek kodu i działało:)

Jak coś to "rozbudowaną" wersję dołączam...
  1. <?php
  2. $mac_adres='00:FF:15:51:C1:00';
  3. if (!ereg('^([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)+([-.;:])+([0-9A-F]+)$',$mac_adres, $debug))
  4. {
  5. /* Jeśli mac jest nie poprawny */
  6. print 0;
  7. } else {
  8. /* Jeśli mac jest poprawny */
  9. print 1;
  10. }
  11.  
  12. /* sprawdzanie co wyrzuca funkcja eregi */
  13. print '<pre>' . print_r($debug, true) . '</pre>';
  14. ?>
Teraz powinno działać na 100%

PS W eregi syntax wszędzie tam gdzie jest kropka powinien być tylko jeden "\" przed kropką, bo jest znakiem specjalnym.
PS1 Sprawdzane pod kątem seperatorów takich jak: . ; : -, więc powinno działać bez problemów
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:56