Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2016-03-31 12:45:03

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Sprawdzanie pola input type="text" w trakcie wprowadzania

Witam,
Mam taki problem odnośnie walidacji pola z datą....

mam formularz w którym jest pole z datą.
Chciałbym aby podczas wprowadzania daty w tym polu...jeśli zostanie spełniony warunek w bazie mysql'a
wyrzucany był komunikat - "brak możliwości wprowadzania dla wskazanej daty"

Mam pole:

<input type="text" name="data_zd" class="cienie4" maxlength="10">

i takie zapytanie do bazy:

SELECT * FROM blokada where data_od < "$data_zd" AND data_do > "$data_zd"

jeśli wskazana data zwróci wynik, to chciałbym aby pojawiał się komunikat obok tego pola, albo okienko...cokolwiek.
Chodzi o to aby użytkownik nie musiał wypełniać wszystkich pól..i na końcu po zatwierdzeniu nie okazało że to nie ma sensu.

Zna ktoś może jakiś dobry sposób?
Jestem wdzięczny za pomoc :)


debbie
[color=blue]Wrócę jak zjem zupę i drugie danie - tyle[/color]
[color=blue]a oto ta zupa:[/color]

Offline

 

#2  2016-03-31 18:05:45

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Ja bym radził sprawdzić dwa razy, Javascriptem po stronie klienta, potem w PHP po stronie serwera.
JS:
http://stackoverflow.com/questions/10936293/using-a-regular-expression-to-validate-whether-input-has-any-non-digits-in-it
http://javascript.info/tutorial/regular-expressions-methods

PHP:
http://stackoverflow.com/questions/14846074/proper-order-of-php-input-validation

Potem do bazy już masz oczyszczoną wartość, starannie sprawdzoną.
JS eliminuje błąd  po stronie pacjenta przy wpisywaniu, PHP ma barierę bezpieczeństwa (wobec np SQL-Injection, albo po prostu bzdurnych wartości),
a w bazie potem masz porządek. ;)

Pozdro

Ostatnio edytowany przez Jacekalex (2016-03-31 18:18:11)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2016-03-31 22:44:09

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Jesli chodzi o walidacje to proponuje to: https://www.w3.org/TR/html-markup/input.datetime.html

Jesli chodzi o sprawdzanie podczas onkeyup no to trzeba zaprzegnac ajaxa ewentualnie jquery lub juz na ostro AngularJS. Ale na Twoje potrzeby wystarczy sam httprequest w czystym js.

@Jacekalex, z tego co ja rozumie to chodzi mu o to, ze jezeli termin jest zajety to ma wywalic komunikat.


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

#4  2016-03-31 23:58:09

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

@Jacekalex, z tego co ja rozumie to chodzi mu o to, ze jezeli termin jest zajety to ma wywalic komunikat.[/quote]
W takim razie i tak to co napisałem, ale musi sprawdzić w bazie datę i zwrócić odpowiedź, czyli PHP i ewentualnie Ajax, jeśli akcja ma się odbywać bez odświeżenia strony.

Ostatnio edytowany przez Jacekalex (2016-04-01 00:00:59)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2016-04-02 10:38:39

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

@Jacekalex - nie ma już potrzeby zaprzęgania dodatkowo php aby sprawdził poprawność formularza. Aktualnie biblioteki takie jak DoJo, jQuery czy też AngularJS może to zrobić. Po stronie backandu stosuje się jedynie funkcje wbudowane w php które wywalają znaki specjalne. Dodatkowo samo php można skonfigurować przed atakami.


@debbie http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

#6  2016-04-02 11:01:00

  Piotr3ks - Też człowiek :-)

Piotr3ks
Też człowiek :-)
Skąd: Białystok
Zarejestrowany: 2007-06-24

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Poniżej przykład z AngularJS
http://www.w3schools.com/angular/angular_validation.asp

Offline

 

#7  2016-04-02 12:20:10

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

@Jacekalex - nie ma już potrzeby zaprzęgania dodatkowo php aby sprawdził poprawność formularza. Aktualnie biblioteki takie jak DoJo, jQuery czy też AngularJS może to zrobić. Po stronie backandu stosuje się jedynie funkcje wbudowane w php które wywalają znaki specjalne. Dodatkowo samo php można skonfigurować przed atakami.[/quote]
Pod tym jednakże warunkiem, że stronka nie musi chodzić na wszystkich przeglądarkach i się szybko wczytywać.

Stara szkoła może jest dłuższa w kodzeniu, ale niezawodna.

Zabawki typu JQuery czy Angular tak bardzo ułatwiają robotę, że potem Chrome jest dominującą przeglądarką. :D

Pomijam wsiąkanie na sprzęcie mobilnym do stronki liczącej w kodzie około 30kB następnych 148 kb biblioteki, żeby działała, bo komuś się nie chciało 10 linijek kodu napisać.

Wiem, czepiam się... :D

Nie licząc takiej cudownej funkcji, że przez jedno włamanie do DNS, i podrzucenie innego adresu, który serwuje "cudowną bibliotekę" oznacza że nie jedna strona, ale pół internetu serwuje backdoora w jednym czasie.
I to nie jest nawet wina programistów, ale słabości protokołu BGP, i presji administratorów, żeby strona ciągnęła liby z innych serwerów, bo transfer kosztuje, a strona ma się szybko wczytywać.

Pozdro
;-)

Ostatnio edytowany przez Jacekalex (2016-04-02 12:24:37)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#8  2016-04-02 21:35:59

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

no ja przeważnie robię pod FF który mnie denerwuje "kraszami", no ale ma dużo fajnych zabawek pod weba. Chrom jest dla mnie na drugim miejscu, on jest jak dobra świnia co wrypiesz to i tak w miarę sparsuje poprawnie :).

Jeżeli chodzi o kodzenie, to w pewnych serwisach które robiłem (zwłaszcza w streamach) to w cale nie używałem bibliotek zewnętrznych tylko ładowałem czystego JS i sam pisałem (od ajaxa przez wykorzystanie DOM) kod. Wiem o tym, że jak załaduje się "multi coolti" to jest masakra, ale w dobie ówczesnych łączy to już nie problem.

Kolejna sprawa to jest taka (i tu mi przyznasz rację) jeżeli sam napiszesz bibliotekę to w minutę wiesz co się sypie lub co trzeba przerobić.

A człek jest wygodny i korzysta z "multi coolti" bo jest szybciej :)


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

#9  2016-04-02 21:47:26

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

A człek jest wygodny i korzysta z "multi coolti" bo jest szybciej :)[/quote]
Tylko potem koder ma wygodnie, admin ma problem, bo "dzisiejsze łącza" na serwerze przy 5k albo 15k równoczesnych sesji na łączu 1Gbit wszystko ma brykać, i w rezultacie kilka milionów stron łapie 1 wspólny SPOF, jak kiedyś z JQuery.

Nie było by problemu, gdyby te liby były wbudowane w przeglądarki, ale ściąganie tego z netu do każdej strony z osobna może do szału doprowadzić nawet na rurce 100Mbit, czyli średniej - po kablu.

Rożnych terenów z dala od BTS, gdzie LTE nie dochodzi w ogóle nie biorę pod uwagę, chociaż parę osób na tym forum ma net tylko po 3G, żeby daleko nie szukać.

Operatorzy mobilni nawet XML nie chcą przesyłać, tylko JSON, żeby kilka KB oszczędzić na połączeniu, a Ty mi tu z szybkimi łączami wyjeżdżasz?
Zobacz lepiej, co się stało z FB-Messagerem, który też z XMPP migruje na JSONa.

A może FB nie ma szybkich rurek do netu?

Pozdro

Ostatnio edytowany przez Jacekalex (2016-04-02 21:48:52)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#10  2016-04-02 22:34:11

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

no wiesz ja tam patrze przez pryzmat klienta i kabelka gdzie jest przynajmniej te 5MiB :) a admini niech się martwią, nie po to płacę 7 stówek na rok za jedyne 120gb, żeby jeszcze martwić się czy mi będzie działało czy nie. :P


P.s.
wiem nie jestem wyrozumiały ;)


---/ Edit

p.s.2

mały off sie zrobił :P

Ostatnio edytowany przez jezoo (2016-04-02 22:34:36)


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

#11  2016-04-02 22:45:31

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

no wiesz ja tam patrze przez pryzmat klienta i kabelka gdzie jest przynajmniej te 5MiB :) a admini niech się martwią, [b]nie po to płacę 7 stówek na rok za jedyne 120gb[/b], żeby jeszcze martwić się czy mi będzie działało czy nie. :P[/quote]
Gdzie takie promocje mają. :D

Ja tam uznaję tylko net no-limit - ryczałtem, na żadne kwoty transferu nie patrzę.
I chyba niewiele tracę z tego powodu...

Ostatnio edytowany przez Jacekalex (2016-04-02 22:47:02)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#12  2016-04-03 14:52:46

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Chodzilo mi o hosting :)


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

#13  2016-04-03 15:33:08

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

[quote=jezoo]Chodzilo mi o hosting :)[/quote]
700 za hosting z limitem 120GB?

Bez żadnego problemu można dostać VPS nolimit za jakieś 30-60 zł, i chociaż chroot na sterydach (OpenVZ zazwyczaj) to dopiero połowa normalnego systemu, to jednak jest tam root, pół firewalla i możliwość jakiejś w względnie sensownej konfiguracji.
SSH po kluczach chodzi, nawet hashlimit w FW jest, także jakiś początek jest.

Za 700 rocznie z resztą coś na KVM czy XEN też by się dało wyczesać, w miejsce "hostingu z limitem 120GB", a na takim już jest normalny, pełnowymiarowy system.

Hosting z takim limitem jest teraz wart w granicach 20/mies,
coś Ciebie chyba golą na sucho. :D

Ostatnio edytowany przez Jacekalex (2016-04-03 19:54:39)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#14  2016-04-03 19:27:37

  mati75 - Psuj

mati75
Psuj
Skąd: default city
Zarejestrowany: 2010-03-14
Serwis

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Za 700 rocznie idzie dorwać dedyka np. tutaj: kimsufi.pl


[img]https://l0calh0st.pl/obrazki/userbar.png[/img]

Offline

 

#15  2016-04-07 05:11:37

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

[quote=jezoo]@Jacekalex - nie ma już potrzeby zaprzęgania dodatkowo php aby sprawdził poprawność formularza. Aktualnie biblioteki takie jak DoJo, jQuery czy też AngularJS może to zrobić. Po stronie backandu stosuje się jedynie funkcje wbudowane w php które wywalają znaki specjalne. Dodatkowo samo php można skonfigurować przed atakami.


@debbie http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp[/quote]
Dobry pomysł z tym JQuery:

http://www.zdnet.com/article/wordpress-joomla-domains-under-attack-through-jquery-security-flaw/
https://blog.avast.com/wordpress-and-joomla-users-get-hacked-be-aware-of-fake-jquery

Ciekawe, kiedy coś podobnego wyczytam o AngularJS  albo DoJo.
xD

Ostatnio edytowany przez Jacekalex (2016-04-07 05:13:27)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#16  2016-04-07 13:39:46

  debbie - Użytkownik

debbie
Użytkownik
Zarejestrowany: 2006-09-19

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

Dziękówka wszystkim za pomoc :) Właśnie kopię w skryptach :)


debbie
[color=blue]Wrócę jak zjem zupę i drugie danie - tyle[/color]
[color=blue]a oto ta zupa:[/color]

Offline

 

#17  2016-04-07 21:03:51

  jezoo - Dzięcioł

jezoo
Dzięcioł
Skąd: Z lasu
Zarejestrowany: 2005-09-02

Re: Sprawdzanie pola input type="text" w trakcie wprowadzania

[quote=Jacekalex][quote=jezoo]Chodzilo mi o hosting :)[/quote]
700 za hosting z limitem 120GB?

Bez żadnego problemu można dostać VPS nolimit za jakieś 30-60 zł, i chociaż chroot na sterydach (OpenVZ zazwyczaj) to dopiero połowa normalnego systemu, to jednak jest tam root, pół firewalla i możliwość jakiejś w względnie sensownej konfiguracji.
SSH po kluczach chodzi, nawet hashlimit w FW jest, także jakiś początek jest.

Za 700 rocznie z resztą coś na KVM czy XEN też by się dało wyczesać, w miejsce "hostingu z limitem 120GB", a na takim już jest normalny, pełnowymiarowy system.

Hosting z takim limitem jest teraz wart w granicach 20/mies,
coś Ciebie chyba golą na sucho. :D[/quote]
ja tego do tego nie dokładam, tylko klienci mi pokrywają koszty utrzymania hostingu. A ja i tak na tym wwychodzę. wsio radno mi.


[img]http://intershock.pl/images/icons/freebsd.jpg[/img] [img]http://www.the-eleven.com/site_media/static/img/postgresql_powered.png[/img] [img]http://www.wwgmc.com/images/badge_php.gif[/img]
LRU #480459

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.011 seconds, 11 queries executed ]

Informacje debugowania

Time (s) Query
0.00010 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00111 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.217.4.250' WHERE u.id=1
0.00069 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.217.4.250', 1732217706)
0.00051 SELECT * FROM punbb_online WHERE logged<1732217406
0.00069 SELECT topic_id FROM punbb_posts WHERE id=300365
0.00199 SELECT id FROM punbb_posts WHERE topic_id=28476 ORDER BY posted
0.00060 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=28476 AND t.moved_to IS NULL
0.00008 SELECT search_for, replace_with FROM punbb_censoring
0.00092 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=28476 ORDER BY p.id LIMIT 0,25
0.00087 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=28476
Total query time: 0.0076 s