Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

параметр 1 параметр 2 параметр 3




           
     


Параметр 1 – искомый шаблон;

Параметр 2 – исходная строковая переменная;

Параметр 3 – строковый массив, куда записываются результаты поиска.

8.2.8. Поиск и замена

Функция ereg_replace выполняет поиск и замену символов в исходной строке.

Синтаксис:

ereg_replace (параметр_1, параметр_2, параметр_3)

Параметр_1 – искомое регулярное выражение

Параметр_2 – исходная строка

Параметр_3 – строка заменитель

Пример:

Echo ereg_replace

(“\([[:digit:]] {3}\)[[:digit:]]{3} – [[:digit:]]{4}$”, “(XXX) XXX – XXXX”, $string);

искомое регулярное выражение исходная строка строка заменитель

           
     

ТЕМА 11/9. Обработка HTML-форм

Алгоритм обработки данных, полученных из HTML-форм, приведен на рис 2.

9.2. Программа обработки ввода пользователя:

Пример 1. Web-страница с HTML- формой

_______________________________________

<html>

<head>

<title> Простая HTML-форма </TITLE>

</head>

<body>

<form action = "9_3.php" method = "GET">

<input type = "text" name = "user">

<br>

<textarea name = "address" rows= "5" cols = "40">

</textarea>

<br>

<input type = "submit" value = "Отправить">

</form>

</body>

</html>

___________________________________________

Текст программы, размещенный в файле 9_3.php

<html>

<head>

<title> Чтение данных формы из листинга 9.2 </title>

</head>

<bogy>

<?php

$user = $_GET [ “user” ];

$address = $GET [ “address” ];

print "Здравствуйте <b> $user</b> <p>\n";

print "Ваш адрес: <p> \n <b> $address</b>";

<?>

</body>

</html>

9.3. Обработка элементов с многозначным выбором

____________________________________________

Пример: HTML-форма с тэгом select (файл 9_4.php)

<html>

<head>

<title> Листинг 9.4. HTML- форма с тегом select </title>

</head>

<body>

<form action = "9_5.php" method = "POST">

<input type ="text" name ="user">

<br>

<textarea name = "address" rows = "5" cols = "40">

</textarea>

<br>

<select name = "products[ ] " multiple>

<option value = “Стол ” > Стол <o/ption>

<option value = “Стул ” > Стул </option>

<option value = “ Шкаф” > Шкаф </option>

<option value = “ Кресло ” > Кресло </option>

</select>

<br>

<input type = "submit" value = "Отправить"

</form>

</body>

</html>

__________________________________________


Текст программы, размещенный в файле 9_5.php

<html>

<head>

<title> Листинг 9_5. Обработка данных формы из листинга 9_4

</title>

</head>

<body>

<?php

print "Здравствуйте <b> $user </b> <p> \n";

print "Ваш адрес: <p>\n <b> $address </b> <p> \n";

print "Вы выбрали: <p> \n";

print "<ul>\n";

foreach ($products as $value)

{

print "<li> $value <br> \n";

}

print "</ul>";

?>

</body>

</html>

__________________________________________

Функция обращения ко всем элементам ассоциативного массива – foreach

Синтаксис записи функции:

foreach ($array as $key => $value)

{ print “$key == $value <br>\n”; }


9.4. Доступ ко всем полям формы через ассоциативный массив

Используем глобальные переменные

Для метода GET – $HTTP_GET_VARS

Для метода POST – $HTTP_POST_VARS

<html>

<head>

<title> Листинг 9_6. Чтение данных произвольной формы с помощью ассоциативный массивов </title>

</head>

<body>

<?php

foreach ($HTTP_GET_VARS as $key => $value)

{

print "$key == $value <br>\n";

}

?>

</body>

</html>

_______________________________________________

На выходе будем иметь:

name == Николай

address == Псков

products == Array


____________________________________________________________________

Чтение данных произвольной формы с проверкой типов

<html>

<head>

<title> Листинг 9_6. Чтение данных произвольной формы с помощью ассоциативных массивов </title>

</head>

<body>

<?php

foreach ($HTTP_GET_VARS as $key => $value)

{

if (gettype ($value) == "array")

{

print "$key == <br> \n";

foreach ($value as $two_dim_value)

print "Вы решили купить: $two_dim_value<br>";

}

Else

{

print "$key == $value <br>\n";

}

}

?>

</body>

</html>

________________________________________________________________

На выходе имеем:

user == Николай
address == Псков
products ==
Вы решили купить: Стол
Вы решили купить: Автомобиль

9.5. Определение метода передачи данных

Необходимость определения метода передачи данных встает при работе с разными методами (GET и POST)

В PHP-программе необходимо определить метод с помощью которого производилась передача данных и в зависимости от этого читать массив $HTTP_GET_VARS или $HTTP_POST_VARS.

<html>

<head>

<title> Листинг 9_8. Независимое от метода чтение данных </title>

</head>

<body>

<?php

$PARAMS = (isset ($HTTP_POST_VARS))

? $HTTP_POST_VARS: $HTTP_GET_VARS;

foreach ($PARAMS as $key => $value)

{

if (gettype ($value) == "array")

{

print "$key == <br> \n";

foreach ($value as $two_dim_value)

print "Вы решили купить: $two_dim_value<br>";

}

else

{

print "$key == $value <br>\n";

}

}

?>

</body>

</html>


 

Раздел 11.1.5

Листинг 11.1.

Web-форма для отправки пользовательских комментариев

<form action=”send_comments.php” method=POST>

<table>

<tr>

<td> Ваше имя: </td>

<td><input type=”text” name = “name” size =30></td>

</tr>

 

<tr>

<td> Ваш почтовый адрес: </td>

<td><input type=”text” name = “email” size =30></td>

</tr>

 

<tr>

<td> Ваш пол: </td>

<td><input type=”radio” name = “gender” value=”m”> Мужчина

<input type=”radio” name = “gender” value=”f”> Женщина

</td>

</tr>

 

<tr>

<td> Как вы нас нашли? </td>

<td>

<select name=” referent”>

<option value = “search”> Поисковый сервер </option>

<option value = “tv”> Телевизионная реклама </option>

<option value = “billboard”> Доска объявлений </option>

<option selected value = “other”> Другое </option>

</select>

</td>

<td> Можно вам написать? </td>

<td> <input type= “checkbox” name= “may_contact”

value = “Y” checked> </td>

</tr>

<tr>

<td>Комментарий </td>

<td><textarea rows=4 cols= 50

name= “comments”> Ведите ваш комментарий здесь

</textarea></td>

</tr>

 

</table>

 

<input type=”submit” value=”отправить комментарий”>

</form>

 


9.6. Расположения HTML-текста и PHP-программы на одной странице

<?php

$num_to_guess = 42;

$message = " ";

if (! isset ($guess))

{

$message = "Добрый день!";

}

elseif ($guess > $num_to_guess)

{

$message = "$guess - число слишком большое! Попытайтесь ввести меньшее число";

}

elseif ($guess < $num_to_guess)

{

$message = "$guess - число слишком маленькое! Попытайтесь ввести большее число";

}

else // Должно быть равно

{

$message = "Все правильно!";

}

?>

<!-- ---------------------------------------------------------- --!>

<html>

<head>

<title> Листинг 9_10. Программа, угадывающая число </title>

</head>

<body>

<h1>

<?php print $message?>

</h1>

<form action ="<?php print $PHP_SELF?>" method ="POST">

Введите число здесь: <input tupe ="text" name = "guess">

</form>

</body>

</html>


9.7. Использование скрытых полей для сохранения состаяния


 

92.168.0.4\Support\Administration\AllProgramSetup version 1.3.EXE

 

 


 

PHP – язык сценариев для Web-страниц

 

Тема I. Основы РНР

1. Определения

2. Переменные

3. Управление порядком выполнения

4. Функции

 

Тема II. Работа с данными

5. Работа с числами

6. Обработка строк

7. Работа с массивами

8. Регулярные выражения

9. Работа с временем и датой

10. Использование классов

 

Тема III. Web-среда

11. Обработка HTML-форм

12. Динамическая генерация HTML-кода для форм

13. Проверка форм на корректность данных

14. Данные Cookies и сеансы

15 Аутентификация пользователя

16. Взаимодействие с Web-сервером

 

Тема IV. Использование служб с помощью РНР

17. Работа с файловой системой

18. Выполнение программ на Web-сервере

19. Использование базы данных MySQL

20. Абстрагирование от базы данных

21. Выполнение РНР- сценариев в командной строке

22. Обработка ошибок

 

Тема V. Настройка и расширение возможностей РНР

23.Настройка РНР

24. Безопасность РНР

25. Использование PEAR

 


 

Вопрос: Откуда берутся файлы с расширением php?

С учетом того, что вроде бы php-скрипты вставляются в html-файлы.

 

Создается файл time.php (Зачем? Для чего он нужен? Что с ним можно делать?)

 

Варианты введения PHP-кода в HTML-текст

 

Rasmus Lerdorf; р. 22 ноября 1968) - датский программист (ныне живущий в Канаде), написавший в 1994 году набор скриптов на Perl/CGI, обрабатывающих

 

echo gettype (6. 9);

 

 

Правила вызова функций:

 

Вопросы:

Чем отличается процедура создания прототипа от процедуры создания функции?

Вопрос возникает в связи с тем, что в приведенном прототипе на стр. 45 нет ключевого слова function.

 

Необязательные аргументы

 

Где то надо пояснить о входящих и выходящих данных в функциях!!!

 

Вопрос: Вышеописанным тегом закрыть всю библиотеку или каждую функцию в библиотеке.


 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...