Проверка формы сайта - PullRequest
       2

Проверка формы сайта

1 голос
/ 07 марта 2012

В настоящее время я разрабатываю решение для веб-сайта и базы данных, которое позволяет администратору входить в систему и просматривать / добавлять / редактировать / удалять данные, хранящиеся в базе данных.

Каков наилучший способ проверки формы для деталей, которые человек вводит в эти формы;

т.е. даты должны иметь условное обозначение xx / xx / xx

Ответы [ 2 ]

1 голос
/ 07 марта 2012

Существует много разных способов проверки таких данных, но наиболее популярным является использование регулярных выражений . Возможно, вы также захотите проверить другие вещи после проверки формата данных.

Например, если вы хотите проверить дату, вы можете сделать следующее:

function checkDateFormat($date)
{
//match the format of the date
  if (preg_match ("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts)) {
  //check weather the date is valid of not
    if(checkdate($parts[2],$parts[3],$parts[1]))
      return true;
    else
      return false;
  } else {
    return false;
  }
}

Это не только проверит формат даты (в этом случае гггг / мм / дд, но вы можете немного изменить его для поддержки гг / мм / дд или любого другого порядка), а также проверит, является ли он действительным дата (например, 2001/02/31 не является действительной датой).

0 голосов
/ 07 марта 2012

Вы можете сделать это нативно или с помощью библиотек типа.

Native:

//If form was submitted  
if ($_POST['submitted']==1) {  
  // check date format, ...
  if ($_POST[date]){  
    $date = $_POST[date]; //If date was entered  
  }  
  ...
}  

Или по библиотеке: http://pear.php.net/package/HTML_QuickForm2

<?php
require_once 'HTML/QuickForm2.php';
require_once 'HTML/QuickForm2/Rule/Required.php';
require_once 'HTML/QuickForm2/Rule/Regex.php';

$form = new HTML_QuickForm2('tutorial');
$username = $form->addElement('text', 'username');
$form->addElement('submit', null, array('value' => 'Send!'));

$username->addRule(new HTML_QuickForm2_Rule_Required(
    $username, 'Username is required!'
));
....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...