Сделай Сам Свою Работу на 5

Пример выполнения работы № 1





 

Вариант-N: разработать веб-страницу (HTML, CSS), содержащую форму, представленную на рисунке 5. Использовать табличную вёрстку.

 

 

Рисунок 5 – форма для варианта-N

 

Решение

Файл form.html

 

<html>

<head>

<title>Регистрация пользователя</title>

<meta http-equiv="Content-Type" content="text/html;

charset=windows-1251" />

<link rel="stylesheet" type="text/css" media="screen"

href="form.css" />

</head>

 

<body>

 

<table border="0">

<form action="#" method="post">

<tr>

<td align="right">Фамилия:</td>

<td align="left"><input type="text" name="name_l" size="50"

maxlength="200" value="" /></td>

</tr>

<tr>

<td align="right">Имя:</td>

<td align="left"><input type="text" name="name_f" size="50"

maxlength="200" value="" /></td>

</tr>

<tr>

<td align="right">Отчество:</td>

<td align="left"><input type="text" name="name_m" size="50"

maxlength="20" value="" /></td>

</tr>

<tr>

<td align="right">Дата рождения:</td>

<td align="left">

<input type="text" name="bd_d" size="2" maxlength="2" value="" />.

<input type="text" name="bd_m" size="2" maxlength="2" value="" />.



<input type="text" name="bd_y" size="4" maxlength="4" value="" />

</td>

</tr>

<tr>

<td align="right">&nbsp;</td>

<td align="left"><input type="submit" name="go"

value="Регистрация" /></td>

</tr>

</form>

</table>

 

</body>

</html>

 

 

Файл form.css

 

body {background-color: #CCCCFF}

input {border: 1px solid #660099; background-color: #CCE6FF}

 


Пример выполнения работы № 2

 

Вариант-N: написать скрипт, получающий в качестве параметра командной строки двоичное число и представляющий его в десятичной системе счисления.

 

Решение

Файл lab2.php

 

<?php

 

// Если из командной строки не передано число -- прекратить работу.

if ($argc<2)

{

die("Укажите двоичное число в качестве параметра командной

строки.");

}

 

// Извлечение числа из параметров, переданных из командной строки.

$num = $argv[1];

 

// Проверка длины введённых данных.

if (strlen($num)>100)

{

die('Вы ввели слишком длинное число.');

}

 

/* Проверка того, что из командной строки передано двоичное число.

Данную проверку можно выполнить более эффективно с помощью регулярных



выражений, что и будет показано в закомментированном блоке кода. */

 

for ($i=0; $i<strlen($num); $i++)

{

if (($num[$i]!='0')&&($num[$i]!='1'))

{

die('Переданное число не является двоичным.');

}

}

 

/* Та же проверка через регулярные выражения:

if (preg_match("/[^01]/", $num))

{

die('Переданное число не является двоичным.');

}

*/

 

// Конвертация и вывод результата.

echo bindec($num);

 

?>


Пример выполнения работы № 3

 

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

 

Решение

Файл lab3.php

<?php

 

// Если из командной строки не передано имя

// каталога -- прекратить работу.

if ($argc<2)

{

die("Укажите имя каталога в качестве параметра командной

строки.");

}

 

// Извлечение имени каталога из

// параметров, переданных из командной строки.

$dir_name = $argv[1];

 

// Проверка существования каталога.

if (!is_dir($dir_name))

{

die('Такого каталога не существует.');

}

 

// Открытие каталога.

$dir_resource = opendir($dir_name);

 

// Проверка успешности операции открытия каталога.

if ($dir_resource === NULL)

{

die('Не удалось открыть каталог.');

}

 

// Чтение каталога.

while (($file_name = readdir($dir_resource)) !== false)

{

// Получение полного имени элемента.

$full_name = $dir_name.'/'.$file_name;

 

// Проверка того, что элемент

// является файлом.

if (is_file($full_name))

{

// Вывод информации.

echo $file_name.' ';

echo filesize($full_name).

' ('.round(filesize($full_name)/1024,2).' Kb) ';

echo date('Y.m.d H:i:s',

filectime($full_name)).', ';

echo date('Y.m.d H:i:s',

filemtime($full_name)).', ';



echo date('Y.m.d H:i:s',

fileatime($full_name))."\n";

}

}

 

// Закрытие каталога.

closedir($dir_resource);

 

?>

 


Пример выполнения работы № 4

 

Вариант-N: в произвольном тексте все целые числа возвести в квадрат и вывести красным цветом.

 

Решение

Файл lab4.php

<?php

 

// Чтение текста из файла.

if (is_file('text.txt'))

{

$text = file_get_contents('text.txt');

}

else

{

die('Файл данных text.txt не найден.');

}

 

// Callback-функция возведения возведения в квадрат

// найденных целых чисел.

function square($x)

{

return '<span style="color:red">'.($x[0]*$x[0]).'</span>';

}

 

// Поиск и замена целых чисел.

$text = preg_replace_callback('/\d+/', 'square', $text);

 

// Вывод результата

echo $text;

 

?>


Пример выполнения работы № 5

 

Вариант-N: написать скрипт, выполняющий указанное количество раз случайный запрос (из некоторого набора) и определяющий минимальное, максимальное и среднее время выполнения запроса.

 

Решение

Файл lab5.php

<?php

 

// Количество повторений запроса

$iterations = 100;

 

// Массив с запросами

$queries = array (

"show databases",

"show tables from `mysql`",

"select * from `mysql`.`mysql_user`",

"select * from `mysql`.`help_relation`",

"select * from `mysql`.`help_topic`");

 

// Подсоединение к СУБД

$lnk = mysql_connect('127.0.0.1', 'root', '123456');

if ($lnk === FALSE) { die(); }

 

// инициализация массива оставшихся итераций для каждого запроса

for ($i=0;$i<sizeof($queries);$i++)

{

$final_data[$i]['iterations'] = $iterations;

}

 

// Продолжать выполнение следует в случае, если хотя бы

// для одного запроса не был исчерпан лимит итераций

function can_continue($final_data)

{

$sum = 0;

for ($i=0;$i<sizeof($final_data);$i++)

{

$sum+=$final_data[$i]['iterations'];

}

if ($sum>0)

{

return TRUE;

}

else

{

return FALSE;

}

}

 

// Выполнять следует случайный запрос, однако при

// этом у него не должен быть исчерпан лимит итераций

function get_query_number($final_data)

{

$x = mt_rand(0, sizeof($final_data)-1);

if ($final_data[$x]['iterations']>0)

{

return $x;

}

else

{

for ($i=0; $i<sizeof($final_data); $i++)

{

if ($final_data[$i]['iterations']>0)

{

return $i;

}

}

}

}

 

// Функция подсчёта среднего времени выполнения запроса

function avg($arr)

{

if (sizeof($arr)==0)

{

return 0;

}

$sum = 0;

for ($i=0; $i<sizeof($arr); $i++)

{

$sum+=$arr[$i];

}

return $sum/sizeof($arr);

}

 

// Основной цикл: выполнение запросов и сбор значений времени

while (can_continue($final_data))

{

$x = get_query_number($final_data);

$t1 = microtime(TRUE);

mysql_query($queries[$x]);

$t2 = microtime(TRUE);

$final_data[$x]['avg'][] = $t2-$t1;

$final_data[$x]['iterations']--;

}

 

// Генерация и вывод результатов

for ($i=0;$i<sizeof($queries);$i++)

{

echo 'Query ('.($i+1).') ['.$queries[$i].']:'."\n";

echo 'Min: '.min($final_data[$i]['avg'])."\n";

echo 'Max: '.max($final_data[$i]['avg'])."\n";

echo 'Avg: '.avg($final_data[$i]['avg'])."\n\n";

}

 

// Закрытие соединения с СУБД

mysql_close($lnk);

?>

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.