<p>Адрес доставки: <input type="text" name="address" size="50" value="<?php 
echo $address;
?>
">
			<p><input type="submit" value="Оформить заказ"> 
				<input type="reset" value="Очистить данные">
	</form>
</body>
</html>
<?php 
// filters param. from form ввода данных Юзера: START
if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['name']) && !empty($_POST['name']) && isset($_POST['email']) && !empty($_POST['email']) && isset($_POST['phone']) && !empty($_POST['phone']) && isset($_POST['address']) && !empty($_POST['address'])) {
    $name = f_clearData($_POST['name'], 'string_forfile');
    $email = f_clearData($_POST['email'], 'string_forfile');
    $phone = f_clearData($_POST['phone'], 'string_forfile');
    $address = f_clearData($_POST['address'], 'string_forfile');
    $orderid = $basket['orderid'];
    // вынимаем из Массива-Корзины-Куки именно уникал.идентификатор Юзера
    $datetime = time();
    // ставим в момент POST'а current TIMESTAMP. (Также можно с помощью $_SERVER['REQUEST_TIME'])
    $ip_user = $_SERVER['REMOTE_ADDR'];
    // считываем IP-adress Юзера
    $path = "{$name}|{$email}|{$phone}|{$address}|{$orderid}|{$datetime}|{$ip_user}\r\n";
    //формир.строку из получен.данных для записи в файл orders.txt
    file_put_contents('orders_log/' . ORDERS_LOG, $path, FILE_APPEND);
    // открываем соед.с файлом и записываем в него сформированную строку с данными
    if (!f_resaveOrder($orderid, $datetime)) {
        echo "Ошибка приложения оформлениЯ заказа";
    } else {
        echo $alert = "Ваш Заказ принят!";
        echo <<<END
        echo "<hr><a href='mailto:{$email}'>{$name}</a> От: {$datetime}";
        //вывод поля name ссылкой, где направление ссылки есть e_mail этого пользователя
        echo "<p>" . $msg . "</p>";
        // вывод поля msg,пропущенное через ф-ю nl2br - делает вывод из таб.БД именно так, как было введено в БД
        echo "<p align='right'><a href='{$_SERVER['REQUEST_URI']}&del={$id}'> Delete </a></p>";
        //делаем ссылку удалить инфо выведенное до этого по id
    }
} else {
    echo "Извлечение запроса из БД НЕ может быть осуществлено,- в таблице БД нет записей!";
}
//иначе,когда и 1и2 условие Не прошли- вывести текст ошибки
// Block: вывод Гостевой книги: END
//Block: Delete User's Рost: START
if (isset($_GET['del'])) {
    // если глоб.переменная такая послалась именно методом GET
    $del = f_clearData($_GET['del'], 'integer');
    // то принимаем, отфильтровываем как число,целое,положительное
    if ($del) {
        // допол.проверка (если есть такой, но уже отфильтрованный параметр)
        $sql = "DELETE FROM msgs WHERE id={$del}";
        // формируем запрос к таблице БД
        mysqli_query($link, $sql) or die(mysqli_error($link));
        // исполняем запрос(действие) к таблице БД и ложим результат в $result
        mysqli_close($link);
        // закрываем соединение с БД
        header("Location: " . $_SERVER['SCRIPT_NAME'] . '?id=gbook');
        // перезапрос страницы методом GET - НЕ ПРОДУМАН,через:'?id=gbook' - БРЕДДД-ПЕРЕДЕЛАТЬ!!!!!
    }
}
//Block: Delete User's Рost: END
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<?php

header("Content-type:text/html; charset=utf-8");
// передаем заголовок с нужной кодировкой
header("Cache-Control:no-store");
//запрет на кеширование страницы(т.е. НЕ КЭШИРОВАТЬ); если нужно вообще
// посыл заголовка для формы-выбора "Куда отправимся?" в header.inc.php
$url = strip_tags($_GET["url"]);
if ($url) {
    header("Location: {$url}");
    exit;
}
////////////////////////////////////////////////////////////////////////
$id = f_clearData($_GET['id'], 'string_to_lower');
// инициализируем $id из данных пришедших методом GET из меню выбора страниц сaйта(l_sidebar.inc.php <- data_menus.inc.php)
//////////////////////////////////////////////////////////////////////////////////////////////////////////
// Config. paramameters for connecting and CONNECT to BD 'gbook':
define('DB_HOST', 'localhost');
// наш хост localhost
define('DB_LOGIN', 'root');
// Логин к БД
define('DB_PASSWORD', '');
// Пароль к БД (тут у нас его нет,отсутствует)
define('DB_NAME', 'gbook');
// Имя нашей БД
$link = mysqli_connect(DB_HOST, DB_LOGIN, DB_PASSWORD, DB_NAME) or die(mysqli_connect_error());
// connect to BD 'gbook' (in the mySQL)
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Exemple #4
0
}
if (!empty($all_catalog)) {
    // если мы тут, значит в $all_catalog массив, если он Не пустой, то выводим все в заданном формате
    echo "Всего товаров (шт.) - " . mysqli_affected_rows($link) . "<br>";
    // корректно ли работает эта ф-я ???
    foreach ($all_catalog as $catalog) {
        // мет.GET будет уходить идентифик.(id) товара
        echo "<tr>\n\t\t\t\t<td> {$catalog['title']} </td>\n\t\t\t\t<td> {$catalog['author']} </td>\n\t\t\t\t<td> {$catalog['pubyear']} </td>\n\t\t\t\t<td> {$catalog['price']} </td>\n\t\t\t\t<td> <a href='{$_SERVER['SCRIPT_NAME']}?id={$catalog['id']}'> В корзину </a> </td>\n\t\t\t</tr>";
    }
} else {
    echo "В Каталоге БД нет товаров!";
}
// Block: вывод Списка всех товаров из Каталога: END
// Block: добавление товара из Каталога в КОРЗИНУ Юзеру(по $id): START
if (isset($_GET['id'])) {
    $id = f_clearData($_GET['id'], 'integer');
}
// принимаем,инициализ.,фильтруем пар.(id) - идентификатор товара из Каталога БД
if ($id === '0') {
    header("Location: " . $_SERVER['SCRIPT_NAME']);
    exit;
} elseif ($id) {
    $quantity = 1;
    // кол-во товара в КОРЗИНЕ Юзера со значением по умолчанию =1
    f_addBasket($id, $quantity);
    // ДОБАВЛЕНИЕ ТОВАРА в КОРЗИНУ Юзера
    header("Location: " . $_SERVER['SCRIPT_NAME']);
    // перезапрашиваем обратно страницу catalog.php
}
// Block: добавление товара из Каталога в КОРЗИНУ Юзеру(по $id): END
?>
<?php

if ($_SERVER['REQUEST_METHOD'] == "POST") {
    // была ли отправлена Форма или нет, если да,-то принимаем переданные переменные и фильтруем их
    $rows = f_clearData($_POST['rows'], 'integer');
    $cols = f_clearData($_POST['cols'], 'integer');
    $color = f_clearData($_POST['color'], 'string');
}
?>

<!-- Input form START-->
<form method="POST" name='form' action="<?php 
echo $_SERVER['REQUEST_URI'];
?>
 ">
	Задать кол-во строк: <input type="text" name="rows" value="<?php 
echo $rows;
?>
"><br><br> <!-- value="....."- чтобы значения введенных данных пользователем не удалялись. Удалить,если не надо, чтобы так было -->
	Задать кол-во столбцов: <input type="text" name="cols" value="<?php 
echo $cols;
?>
"><br><br>
	Задать цвет: <input type="text" name="color" value="<?php 
echo $color;
?>
"><br><br>
<input type="submit" value="CREATE !">
</form> <!-- Input form END-->

Exemple #6
0
//include "..secure/login.php";
include_once "lib.inc.php";
// + библиотека функций
include_once "config.inc.php";
//+ основной файл с конфигурационн.настройками
ob_start();
// Стартуем буфферизацию контента
// filters param. from form ввода данных Юзера и его сообщения: START
if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['title']) && !empty($_POST['title']) && isset($_POST['author']) && !empty($_POST['author']) && isset($_POST['pubyear']) && !empty($_POST['pubyear']) && isset($_POST['price']) && !empty($_POST['price']) && isset($_POST['price1']) && !empty($_POST['price1'])) {
    $title = f_clearData($_POST['title'], 'string_to_db_prepare');
    $author = f_clearData($_POST['author'], 'string_to_db_prepare');
    $pubyear = f_clearData($_POST['pubyear'], 'integer');
    $price = f_clearData($_POST['price'], 'integer');
    // если цена будет вбиваться в одно поле,то сдесь 2-м параметром передать float_notsign и в БД не забыть поставить параметр в соответст.поле "DOUBLE" и в mysqli_stmt_bind_param "d"
    $price1 = f_clearData($_POST['price1'], 'integer');
    $price = $price . '.' . $price1;
    f_addCatalog($title, $author, $pubyear, $price);
    $alert = "Товар успешно добавлен в БД";
    header("Refresh:2; {$_SERVER['REQUEST_URI']}");
} elseif ($_SERVER['REQUEST_METHOD'] !== "POST") {
    // если была отправлена форма c данными от Юзера методом POST
    $alert = " ";
} elseif ($_SERVER['REQUEST_METHOD'] == "POST" && empty($title) or empty($author) or empty($pubyear) or empty($price)) {
    // если была отправлена форма c данными от Юзера методом POST
    $alert = "Вы заполнили не все имеющиеся поля Формы!";
} elseif (!f_addCatalog($title, $author, $pubyear, $price)) {
    $alert = "ERROR: добавления товара в БД!";
}
?>
<html>
		<textarea name='msg' id="msg" cols="51" rows="10" maxlength="100" title="Максимально 100 символов"></textarea> <br><br>
	
		<input type='submit' value='SEND'>
		<input type="reset" value="Clear">
</form>	

<br><hr>
<?php 
// filters param. from form_question  START
if ($_SERVER['REQUEST_METHOD'] == "POST") {
    $name = f_clearData($_POST['name'], 'string_forfile');
    // если отправлять будем в БД, то указать string_to_db
    $age = f_clearData($_POST['age'], 'integer');
    $theme = f_clearData($_POST['theme'], 'string_forfile');
    // если отправлять будем в БД, то указать string_to_db
    $msg = f_clearData($_POST['msg'], 'string_forfile');
    // если отправлять будем в БД, то указать string_to_db
}
// filters param. from form_question  END
// print param. from form_question START
$res_mail = '';
// инициализируем переменную для индикации успешности правильного заполнения формы и результата отправки письма (пока пустая)
if ($_SERVER['REQUEST_METHOD'] !== "POST") {
    // если форма с данными не была отправлена, т.е.Юзер только зашел на новую страницу,-то ничего не выводить
    echo " ";
    $res_mail = false;
} elseif (!$name or !$theme or !$msg) {
    // если эти переменные НЕ существуют, т.е.что-то не ввели в одно из этих полей, то выводим текст об этом
    echo "Вы НЕ заполнили одно или несколько текстовых полей формы !";
    $res_mail = false;
} elseif (!empty($name) && !empty($theme) && !empty($msg) && $age == false) {
Exemple #8
0
<?php

ob_start();
// Стартуем буфферизацию контента
include_once "lib.inc.php";
// + библиотека функций
include_once "config.inc.php";
//+ основной файл с конфигурационн.настройками
if (isset($_GET['logout'])) {
    // если передан мет.GET ($logout)- т.е.если нажали ссылку "Завершить сеанс"
    $logout = f_clearData($_GET['logout'], 'string_to_lower');
    // принимаем ($logout), фильтруем
    f_logOut();
    // вызываем ф-ю,которая перебросит снова на авторизаци. страницы
}
?>
<!DOCTYPE html>
<html>
    <head>
        <title>АДМИНКА</title> <!-- в зависимости от того, как отработает block print $title сверху файла -->
        <meta http-equiv="content-type"
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" type="text/css" href="includes/style.css" />
    </head>
    <body>
	<h1>Администрирование магазина</h1>
	<h3>Доступные действия:</h3>
	<ul>
		<li><a href='add_cat.php'>Добавление товара в каталог</a></li>
		<li><a href='orders_view.php'>Просмотр готовых заказов</a></li>
		<li><a href='create_user.php'>Добавить SuperUser</a></li>
        echo "</tr>";
        // строка шапки таблицы: end
        echo "</table>";
        // таблица отрисовка: end
    }
}
// BLOCK: вывода данных в браузер из файла path.log в папке(log): END
/* _____________если надо вывод сделать попроще,- не таблицей, а просто списком нумерованным,и чтобы выводилось ВСЕ без условий каких-то, то:
if(file_exists('log/'.PATH_LOG)) { //если существует такой файл(Имя файла зашита в константу PATH_LOG (см.index.php) ) в папке log, то:
	$log_arr= file('log/'.PATH_LOG); // читаем сод.этого файла в массив построчно(ф-ей file) и кладем в таком виде в $log_arr
	
	if(is_array($log_arr)) { //делаем еще одну проверку, теперь уже на предмет массив ли зашел в $log_arr. Если да, то выводим в виде и в цикле:
		echo "<ol>";
			foreach ($log_arr as $value_line) {
				list($dt,$page_on,$ref)= explode('||', $value_line); // разбиваем строку по метке '||', которую мы определяли как разделитель для строки данных в $path (см.log.inc.php) и которая сейчас у нас сидит в $log_arr, а потом присваиваем полученное еще и ф-ии list(),которая присваивает разбитую(по метке '||')строку указанным 3-м переменным, с которыми теперь можно работать отдельно с каждой 
				$dt= date('d-m-Y H:i:s',$dt);
				echo "<li> $dt: $ref => $page_on </li>";
			}
		echo "</ol>";
	}
}*/
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// BLOCK: удаления файла path.log в папке[log] после нажатия кнопки формы на этой же странице: START
if ($_SERVER['REQUEST_METHOD'] == "POST") {
    $delete = f_clearData($_POST['delete'], 'string');
    // передается из формы-КНОПКИ УДАЛЕНИЯ скрытым(hidden) типом
    unlink('log/' . PATH_LOG);
    header("Location: " . $_SERVER['REQUEST_URI']);
    // перезапрос страницы методом GET
}
// BLOCK: удаления файла path.log в папке(log) после нажатия кнопки формы на этой же странице: END