Тип Array в PHP є впорядкованою картою даних - тип, який перетворює значення в ключі. Цей тип оптимізований одночасно в декількох напрямках, тому ви можете використовувати його як звичайний масив, як список (вектор), як хеш-таблицю (що є реалізацією карти), як стек даних, як черга і так далі.
Для завдання array в php можна використовувати функцію array () або безпосередньо задати значення елементів масиву. Далі ми розглянемо приклад завдання масивів в PHP:
<?php
$name=array(0=>" Олександр", 1=>" Марія", 2=>" Іван", 3=>" Анна", 4=>" Костянтин");
Echo $name[3]; ?>
Будь-яка програма, написана на мові PHP, в загальному вигляді являє собою набір конструкцій. У ролі конструкції можуть виступати будь-які елементи, які використовуються в PHP, такі як оператори, функції, цикли і т.д. Дуже часто конструкції групуються в групи конструкцій, які об'єднуються між собою і полягають у фігурні дужки {...}.
Оператор if є одним з найважливіших операторів будь-якої мови програмування. if дозволяє створити так зване розгалуження програми, де виконання програми може піти по одній із гілок, у залежності від виконання або невиконання умови певного, заданого програмістом. У загальному вигляді запису умовного оператора if в PHP можна представити в наступному вигляді:
if (умова)
{ набір_команд }
Оператор else можна вважати логічним продовженням і доповненням до вже вивченого нами оператора if. Else дозволяє ініціювати більш складне розгалуження програми, встановивши певний набір операторів на той випадок, якщо умова, що перевіряється оператором if виявиться брехнею. Також всередині оператора else можна помістити if з ще однією умовою і так далі, практично до безконечності.
Структуру оператора if, розширеного за допомогою else можна представити наступним чином: if (умова) набір_команд_1 else набір_команд_2.
While є простим циклом PHP. У загальному вигляді структура while виглядає наступним чином: while (вираз) { блок_інструкцій }.
На самому початку роботи циклу вираз приводиться до логічного типу і перевіряється його істинність, якщо повертається відповідь TRUE, то виконується блок_інструкцій. Після виконання всіх інструкцій умова перевіряється знову і якщо ІСТИНА повертається знову, ще раз виконується блок_інструкцій і так до тих пір, поки умова буде виконуватися.
PHP дозволяє обробляти дані, які користувач ввів в поля форми. Після активації кнопки submit дані відправляються на сторінку – обробник, вказану в полі action елемента <form>. На сторінці – оброблювачі розташовується PHP скрипт, який виконує певні операції над отриманими даними, наприклад формує і надсилає лист за вказаними користувачем реквізитами.
Дані з форми передаються на сервер як послідовність пар ім'я/значення. Це означає, що ім'я кожного елемента форми (що з'являється в атрибуті NAME тега) зв'язується зі значенням цього елемента (введеним або обраним користувачем). Формат ім'я/значення, використовуваний для передачі, має вигляд ім'я=значення.
Всі дані, передані з форми в програму–обробник розташовуються в наступних суперглобальних масивів: $_GET, $_POST, і $_REQUEST.
$_GET[] — містить всі значення, передані методом GET.
$_POST[] –містить всі значення, передані методом POST.
$_REQUEST[] –містить всі значення, передані методами POST і GET.
Далі створимо невелику форму, яка використовується в роботі.
оформіть замовлення
<form action = "obrobnik.php" method = "post">
Ваше ім'я: <input type = "text" name = "name" />
Виберіть товар <SELECT NAME = "tovar"> Кількість: <input type = "text" name = "kilkist" />
<input type = "submit" name = "submit" value = "Відправити замовлення" />
</ form>
Після натискання на кнопку submit даної форми всі дані передаються оброблювачу "obrobnik.php" .Так як в цій формі використовується метод POST, то всі змінні будуть розташовані всередині масиву $_POST.
Використання суперглобального масиву $_Request дуже зручно, особливо коли не відомо, яким методом були передані дані. Завдяки циклу foreach можна перебрати значення масиву $_Request.
Ми виводимо на екран значення масиву $_Request. Зроблено це може бути для перевірки правильності введення даних користувачем. Тобто користувач вводить дані в форму, натискає відправити, але замість обробки даних у нього на екрані висвічується повідомлення з введеними ним даними і написом підтвердити або відмовитися. Дана ідея застосована на багатьох сайтах, та й взагалі в багатьох програмах.
PHP є потужним інструментом обробки форм, дозволяючи виробляти найрізноманітніші маніпуляції над одними даними, такі, як збереження даних про користувача в базі даних для подальшої авторизації, відправлення повідомлення на пошту користувача і багато іншого.
При роботі з формами часто буває необхідно виконувати перевірку введених користувачем даних. Для цих цілей PHP має ряд функцій:
- is_string() – дозволяє перевірити, чи є змінна рядком.
- is_int() – дозволяє визначити, чи є змінна цілим числом.
- is_numeric() – дозволяє визначити, чи є змінна числом.
- is_numeric() – дозволяє визначити, чи є змінна числом з плавучою точкою.
- strlen(string) – дозволяє визначити довжину рядка.
- strtolower() –перетворює усі символи рядка у нижній регістр.
- strtoupper(string) —перетворює усі символи рядка у верхній регістр.
Створимо обробник, який зможе перевірити правильність введення всіх полів форми і в разі успіху обробити дані форми:
<? php
$ Q = 0; $ W = 0; $ E = 0;
// Робимо перевірку правильності введення даних в форму
// Якщо змінна $ _POST [ 'name'] існує і не дорівнює порожнечі, то 1) присвоюється її значення змінної $ name 2) присвоюємо прапорця значення "1"
if (isset ($ _ POST [ 'name']) and ($ _POST [ 'name'])! = '') {$ name = $ _ POST [ 'name']; $ Q = 1;}
if (isset ($ _ POST [ 'tovar']) and ($ _POST [ 'tovar'])! = '') {$ tovar = $ _ POST [ 'tovar']; $ W = 1;}
if (isset ($ _ POST [ 'kilkist']) and ($ _POST [ 'kilkist'])! = '') {$ kilkis = $ _ POST [ 'kilkist']; $ E = 1;}
if ($ q == 0 or $ w == 0 or $ e == 0) // Якщо хоча б одна змінна не введена то {// 1) Друкуємо повідомлення про це 2) Робимо авто переадресацію на форму введення; echo "<META HTTP-EQUIV = 'Refresh' CONTENT = '5 URL = magazin.php'>"; }?>
База даних дозволяє зберігати різноманітні дані, впорядковувати їх, пов'язувати один з одним за певними алгоритмами і т. д. Для управління базами даних використовуються спеціальні програми – системи управління базами даних (СУБД). Сама ідея збору, зберігання та класифікації документів виникла вже багато років тому, задовго до появи комп'ютерних систем. Дані збиралися по папках, кожна з яких розташовувалася в певній клітинці під порядковим номером, кожна з яких була розташована в сховище більш високого рівня і т. д.
З появою комп'ютерних систем оброблення інформації ступнула на принципово новий рівень. Тепер стало можливим зберігати величезні архіви даних всередині однієї, від сили декількох систем. Але і це далеко не все. Зберігання інформації-це, звичайно, добре, але дуже важливо не заплутатися у величезних масивах даних, знайти потрібний документ швидко і без зайвих проблем. І тут нам на допомогу приходять бази даних і системи керування цими базами.
MySQL є найбільш поширеною СУБД, що використовується при проектуванні інтернет-проектів будь-якої складності: від простих користувальницьких сайтів, до багатомільйонних порталів. СУБД MySQL проста в розумінні, надійна і забезпечує прийнятний рівень швидкодії.
MySQL – це реляційна система управління базами даних. Тобто дані в її базах зберігаються у вигляді логічно пов'язаних між собою таблиць, доступ до яких здійснюється за допомогою мови запитів SQL. Це швидка, надійна і дуже проста СУБД, яка відмінно підійде практично для будь-якого сайту.
База даних MySQL є найбільш популярною у світі базою даних. Пов'язано це насамперед з простотою використання і абсолютної безкоштовністю даної СУБД.Найбільш важливі функції PHP, що дозволяють отримати доступ до бази даних представлені нижче:
- mysql_connect (ім'я_сервераL,ім'я користувача,пароль) – активує з'єднання з MySQL.
- mysql_select_db (ім'я_бази, Ідентифікатор_з'єднання) – дозволяє вибрати базу даних. "Ідентифікатор_з'єднання" – посилання на відкрите з'єднання з базою, створене функції mysql_connect.
- mysql_query (sql-запит) – дозволяє сформувати SQL запит до бази.
- mysql_fetch_array (resourse result) – витягує рядка з бази даних і перетворює її в масив.
- mysql_close (link_identifier) – закриває з'єднання з базою даних.
Для роботи з базами даних нам необхідно створити користувача і пароль які зможуть працювати з базою даних. Для цього переходимо на WEB-сервера Denwer і клацаємо по посиланню «До початку».
Клацаємо за пунктом «Привілеї». Потім «Додати нового користувача»(рис.7). Вказуємо ім'я користувача Denis, хост localhost пароль 12345. Натискаємо всі привілеї та натискаємо «Пішов».