![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 148 Pomógł: 0 Dołączył: 16.06.2003 Ostrzeżenie: (0%) ![]() ![]() |
a wiec mam kod :
[php:1:3fa98d85fc]<?php if(preg_match('/^([a-z0-9_]{3,8}+)$/i',$_POST['login'])) //sprawdzamy login // { $s=count($poprawne); $poprawne[$s]='Login'; } else { $s=count($bledne); $bledne[$s]='Login'; } if(preg_match('/^([a-z0-9_]{3,8}+)$/i',$_POST['haslo'])) //sprawdzamy haslo // { $s=count($poprawne); $poprawne[$s]='Hasło'; } else { $s=count($bledne); $bledne[$s]='Hasło'; } if($_POST['haslo']!=$_POST['haslo2']) //sprawdzamy powtorzone haslo // { $s=count($poprawne); $poprawne[$s]='powtórzone hasło'; } else { $s=count($bledne); $bledne[$s]='Źle powtórzone hasło'; } if(preg_match('/^([@a-z0-9_.]+)$/i',$_POST['email'])) { $s=count($poprawne); $poprawne[$s]='Adres e-mail'; } else { $s=count($bledne); $bledne[$s]='Adres e-mail'; } // Wyswietlanie danych o blednych i wypelnionych polach // echo'Poprawne dane:<br/>'; foreach($poprawne as $key => $val) { echo"$val<br/>"; } echo'bledne dane:<br/>'; foreach($bledne as $key => $val) { echo"$val<br/>"; } ?>[/php:1:3fa98d85fc] niby wszystko jest ok natomiast przy testowaniu wywala mi : [quote]Warning: Compilation failed: internal error: code overflow at offset 19 in /home/yacho/public_html/form.php on line 2 Warning: Compilation failed: internal error: code overflow at offset 19 in /home/yacho/public_html/form.php on line 12[/quote] Pytanie : Co to za blad i jak sie go pozbyc ? ;][/quote] |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 115 Pomógł: 0 Dołączył: 3.05.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam!!
1. Pousuwaj w regexpach te + ![]() 2. Jak masz porównanie haseł... to wychodzi, że jak są różne to ma być dobrze. Zamień ,,!='' na ,,=='' To już sprawi, że będzie działąć (chyba) ![]() Pozatym: [php:1:b227a19076]<?php $tab = array('a', 'b', 'c'); $tab[] = 'd'; print_r($tab); ?>[/php:1:b227a19076] Jak widzisz, jeśli nie ma indexu to przypisuje wartość pierwszemu wolnemu indexowi. Więc te wszystkie count() są niepotrzebne, a tylko obciążają skrypt! -------------------- pozdrawiam bamboos
http://piorun.ds.pg.gda.pl/~ronek/log/jedyne.wma |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Zamień:
Kod /^([a-z0-9_]{3,8}+)$/i
na: Kod /^[A-Za-z0-9_]{3,8}$/
Uwagi: :arrow: będzie szybciej działało wyrażenie z wymienionymi dużymi literami w klasie niż dodawanie modyfikatora /i :arrow: nie mieszaj kwantyfikatorów zakresu ({} i + albo *), to Ci spowodowało błąd :arrow: nie musisz eskejpować kropki w klasie znaków (wewnątrz [ ]) :arrow: nie obkładaj nawiasami całego wyrażenia jeśli interesuje Cię tylko wynik logiczny wyrażenia czy się dopasowało czy nie; to spowalnia |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.06.2025 - 21:41 |