PHP Начинающим

В данном разделе будут выкладываться php заметки, рецепты, удачные на мой взгляд, реализации каких - либо практических задач, подробно мною прокомментированных. Возможно Вам они будут интересны, а мне они нужны здесь для того, что бы не хранить их постоянно в голове.

PHP Исключения

PHP 5 Осчастливил нас механизмом исключений: Exceptions. Эта статья собственно о том, что они такое, что они могут дать разработчику, и как с ними работать.

Создание класса - это всегда работа на абстрактном уровне: создается не конкретная область памяти, а только поведение объектов. Класс выступает инструментом, который, как и язык программирования, может применяться в совершенно разных областях и приложениях.

Как сделать разные языковые версии сайта

Допустим у вас есть сайт и он имеет как русскую так и английскую аудиторию. Так же у вас есть английская и русская версии сайта. Как сделать так что бы англоязычным пользователям выдавалась английская версия, а русскоязычным – русская версия сайта?

Есть один замечательный сервис:

Как вывести ошибки при заполнении html формы

Когда возникает проблема с данными, введенными в html форму, генерируемую PHP скриптом необходимо вывести сообщения об ошибках причём желательно это сделать рядом с проблемными полями, вместо генерации сообщения об ошибке в начале формы. Также по-правильному нужно сохранить значения, которые пользователь напечатал в html форме. Иначе вы рискуете отбить охоту регистрироваться у вас на сайте, предлагая пользователю по десять раз вводить одно и тоже.

Один из вариантов это сделать сохранить сообщения в массиве $errors, индексируя их по именам полей.


  if (!pc_validate_zipcode($_REQUEST['zipcode']))
  {
    $errors['zipcode'] = 'This is is a bad ZIP Code. ZIP Codes must
                          have 5 numbers and no letters.';
  }

Как сделать многостраничную html форму

Допустим нам необходимо использовать html форму, которая показывает более одной страницы и сохраняет данные при переходе от одной страницы к сле дующей. Для этого можно использовать сеансы (сесии):

session_start();
$_SESSION['username'] = $_GET['username'];

Можно также включать переменные из формы более ранней страницы в качестве скрытых полей ввода в более поздних страницах:

<input type="hidden" name="username" value="<?php echo htmlentities($_GET['username']); ?>">

Проверка данных html формы

Итак, нам необходимо гарантировать, что данные, введенные в html форму, удовлетворяют определенному критерию.
Создадим пользовательскую PHP функцию, которая принимает строку для проверки и возвращает true, если строка прошла проверку, и false, если не прошла.

Внутри PHP функции можно использовать регулярные выражения и сравнения для проверки данных. Так, пример ниже показывает функцию pc_validate_zipcode(), которая проверяет достоверность почтового индекса США.

Пример pc_validate_zipcode():

Как получить данные из html формы

html-формы

Итак нам необходимо использовать одну и ту же страницу HTML для вывода формы и обработки введенных в ней данных. Другими словами, требуется избежать размножения страниц, которые работают на отдельных этапах транзакции.

Мы используем скрытое поле в форме, чтобы указать программе, что предполагается его обработка в форме. В данном случае скрытое поле называется stage и имеет значение process:

Еще статьи...

Кто на сайте
Сейчас 49 гостей онлайн