E-learn.ro
Panou utilizatori
Utilizator Parola
Creeaza cont nou    Recupereaza parola
Login
Newsletter
Introdu adresa ta de email
Inscrie-te
Inchide panoul de utilizatori
Add to Google

Tutoriale PHP

Descarca toolbar

Toolbar E-learn.ro Facebook Twitter

WEB DEVELOPMENT  /  PHP  /  Introducere in PHP (24)

XIV. Expresii regulate, partea a II-a

17.02.2009
XIV. Expresii regulate, partea a II-a

Validarile din tutorialele precedente au fost simple, constand in mare parte din verificarea existentei unor date de intrare si a corectitudinii lor. Insa, de cele mai multe ori, verificarile pe care le vei face vor fi ceva mai complexe - de exemplu validarea unei adrese de email sau a unui numar de telefon. Pentru a realiza aceste sarcini mai complicate, programatorii au la dispozitie expresiile regulate.

Total vizualizari: 4271 4271 afisari   |   Comentarii  0   |   Rating   |   (1 vot)   |   Timp necesar: 20 min 20 min   |   Nivel de cunostiinte necesar: Mediu  Mediu

Sursa:  www.devzone.zend.com  
Autor:  Vikram Vaswani
Adauga la tutoriale favorit Adauga la tutoriale favorite
Pagina:
« 1 2
comenteaza printeaza

In continuare, ai nevoie de un script PHP care sa proceseze datele transmise de acest formular, utilizand un obiect de tipul formValidator. Salveaza scriptul de mai jos intr-un formular cu numele processor.php:

<?php
 
// include fisierul cu clasa de validare
include('class.formValidator.php');
 
// initializeaza obiectul
$fv = new formValidator();
 
// incepe verificarea datelor
 
// verifica nume
if ($fv->isEmpty($_POST['name'])) {
    $fv->addError('Nume', 'Va rugam introduceti numele');
}
 
// verifica varsta si intervalul in care se afla 
if (!$fv->isNumber($_POST['age'])) {
    $fv->addError('Varsta', 'Va rugam introduceti varsta');
}
else if (!$fv->isWithinRange($_POST['age'], 1, 99)) {
    $fv->addError(' Varsta ', 'Va rugam introduceti o valoare numerica intre 1 si 99');
}
 
// verifica sexul
if (!isset($_POST['sex'])) {
    $fv->addError('Sex', 'Va rugam selectati sexul');
}
 
// verifica adresa de email 
if (!$fv->isEmailAddress($_POST['email'])) {
    $fv->addError('Email', 'Va rugam introduceti o adresa de email valida');
}
 
// valideaza culoarea
if ($fv->isEmpty($_POST['color'])) {
    $fv->addError('Culoare', 'Va rugam selectati o culoare');
}
 
// valideaza tipul de asigurare
if ($fv->isEmpty($_POST['insurance'])) {
    $fv->addError('Asigurare', 'Va rugam selectati un tip de asigurare');
}
 
// verifica celelalte optiuni
if (isset($_POST['options'])) {
    if ($fv->isInArray($_POST['options'], '4WD') && !$fv->isInArray($_POST['options'], 'PSTR')) {
        $fv->addError('Alte optiuni', 'Va rugam selectati si Servodirectie daca vreti tractiune pe 4 roti');
    }
}
 
// verifica daca au fost intalnite erori 
if ($fv->isError()) {
    // afiseaza erorile 
    echo '<b>Datele nu au fost inregistrate deoarece au survenit una sau mai multe erori.</b> <p /> Va rugam retransmiteti formularul dupa ce corectati urmatoarele erori:';
    echo '<ul>';
    foreach ($fv->getErrorList() as $e) {
        echo '<li>'.$e['field'].': '.$e['message'];
    }
    echo '</ul>';
}
else {
    // datele nu contin erori 
    echo 'Datele sunt OK';
}
 
?>

Dupa cum se poate observa din exemplul de mai sus, metodele din clasa formValidator() sunt foarte utile pentru verificarea datelor introduse de utilizator. Pentru toate campurile din formular, functia isEmpty() e utilizata pentru a verifica prezenta datelor, in timp ce isEmailAddress() sau isWithinRange() efectueaza validari mai restrictive. Metoda isInArray() este folosita pentru validarea check box-urilor si a listelor select.

Ceea ce trebuie sa retii este faptul ca formValidator nu are nici o legatura cu aspectul formularului sau al paginii de rezultate. Metodele acestei clase au ca scop doar testarea input-ului pe care il primesc ca argument si returnarea unui raspuns; interpretarea rezultatelor este la latitudinea fiecarui programator.

In scriptul de mai sus, bucla foreach() parcurge vectorul de erori si le afiseaza sub forma unei liste. Totusi, acest lucru nu este prestabilit: poti afisa erorile sub forma de tabel, sau le poti scrie intr-un fisier log sub orice format doresti.

Cam atat despre expresii regulate si validari. Citeste urmatoarele tutoriale din aceasta serie pentru a afla mai multe despre utilizarea PHP in aplicatiile din lumea reala.

Pagina:
« 1 2
comenteaza printeaza
Alte tutoriale PHP:
Noteaza acest tutorial
Rating tutorial
 
(1 voturi)
Pentru a nota acest tutorial, trebuie sa fii logat!
Posteaza un comentariu
Pentru a posta un comentariu, trebuie sa fii logat!
0 TOP UTILIZATORI* 0 0
Tutoriale scrise de claibornelara
claibornelara Rang utilizator claibornelara - Incepator
4430
Tutoriale scrise de mcuemica
mcuemica Rang utilizator mcuemica - Incepator
4330
Tutoriale scrise de ellarichards
ellarichards Rang utilizator ellarichards - Incepator
4290
Tutoriale scrise de emonclercheap
emonclercheap Rang utilizator emonclercheap - Incepator
4130
Tutoriale scrise de kheops
kheops Rang utilizator kheops - Mediu
4084
* Acest top reprezinta punctajele acumulate in ultimele 30 de zile.
PHP PSD CSS Fotografie Javascript Vista Action Script Dreamweaver Java Photoshop Verilog JSON Word Gimp Excel MySQL Python Swift 3D XML Ruby on Rails Bridge SEO HTML RoR Illustrator Powerpoint Flash XHTML Outlook SWF AJAX Sony Vegas Lightroom COREL DRAW Fireworks StyleSheet
Promovare:
Daca faci parte din comunitatea E-learn.ro si doresti promovarea acesteia, poti accesa pagina de promovare.
Arhiva newsletter:
Daca ai ratat un numar mai vechi, sau vrei sa revezi care au fost noutatile E-learn.ro la un moment dat, poti accesa arhiva de newslettere.
  Copyright © 2008-2013 E-LEARN.ro. Toate drepturile rezervate. Termeni si conditii.
Conceput si realizat de Neokinetics Software