Загрузить файлы в «engine»

This commit is contained in:
Aleksandr 2024-12-24 18:22:28 +03:00
parent a8ca27fe98
commit 6d26629849
5 changed files with 132 additions and 0 deletions

7
engine/admin.php Normal file
View File

@ -0,0 +1,7 @@
<?php
if (isset($_COOKIE['login'])) {
var_dump($_COOKIE['login']);
//проверка и валидация
} else {
var_dump('Кука не установлена');
};

16
engine/file_upload.php Normal file
View File

@ -0,0 +1,16 @@
<?php
$uploaddir = 'C:\\Lerning\\php\\engine\\upload\\';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "Файл не содержит ошибок и успешно загрузился на сервер.\n";
} else {
echo "Возможная атака на сервер через загрузку файла!\n";
}
echo 'Дополнительная отладочная информация:';
print_r($_FILES);
print "</pre>";

15
engine/fileupload.php Normal file
View File

@ -0,0 +1,15 @@
<?php
$form = <<<EOD
Тип кодирования данных, enctype, требуется указывать только так, как показывает пример
<form enctype="multipart/form-data" action="file_upload.php" method="POST">
Поле MAX_FILE_SIZE требуется указывать перед полем загрузки файла
<input type="hidden" name="MAX_FILE_SIZE" value="3000000" />
Название элемента input определяет название элемента в суперглобальном массиве $_FILES
Отправить файл: <input name="userfile" type="file" />
<input type="submit" value="Отправить файл" />
</form>
EOD;
echo($form);

28
engine/login.php Normal file
View File

@ -0,0 +1,28 @@
<?php
//valid constant names
define("PASSWD", "fuf");
define("LOGIN", "fuf@fuf.tv");
// var_dump($_POST);
$login = $_POST['login'];
$password = $_POST['password'];
if (($login == LOGIN ) && ($password == PASSWD)) {
// редирект в админку
setcookie("login", $login, time()+3600); // Истекает через 1 час
setcookie("password", $password, time()+3600); // Истекает через 1 час
// header("Set-Cookie: login=$login; Secure; Path=/; SameSite=None; Partitioned;");
// header("Set-Cookie: passwd=$password; Secure; Path=/; SameSite=None; Partitioned;");
header('Location: http://localhost:8000/admin.php');
} else {
// редирект на форму логина с предупреждением
header('Location: http://localhost:8000/index.php');
}
var_dump($login);
var_dump($password);
echo("LOGIN HANDLER");

66
engine/mass.php Normal file
View File

@ -0,0 +1,66 @@
<?php
var_dump($_SERVER);
exit(0);
//массив
// $arr = array(
// -6 => 'Январь',
// 'Февраль',
// -10 => 'Март',
// 'апрель'
// );
// var_dump($arr);
$users = array(
['Login' => 'admin', 'password' => 123],
['Login' => 'oper', 'password' => 426]
);
$mass = ['login' => 'admin', 'password' => 321];
// var_dump($users);
// foreach($mass as $key => $value) {
// var_dump($key);
// var_dump($value);
// };
function add($x, $y) {
var_dump($GLOBALS['mass']);
return $x + $y;
}
add(2, 3);
exit(0);
//итерация целочисленного массива
$mass = ['a', true, 123, 'exit', 'add'(2, 3) ];
foreach($mass as $value) {
// var_dump($key);
var_dump($value);
if ('exit' === $value) {
break;
};
};
// $narr = [[['a'], ['b']], [['c'],['d']]];
// var_dump($narr[1][0][0]);
// $command_line = $GLOBALS['argv'];
// $fn = $GLOBALS['argv'][1];
// $arg1 = $GLOBALS['argv'][2];
// $arg2 = $GLOBALS['argv'][3];
// var_dump($fn($arg1, $arg2))
// var_dump($GLOBALS['argv']);
// $GLOBALS['argv'][1]()
var_dump($_ENV);
// var_dump($GLOBALS['GDM_LANG']);
$ru = 'Меню';
$en = 'Menu';
$menu = $GLOBALS['_SERVER']['GDM_LANG'] == 'ru' ? $ru : $en;
var_dump($menu);