-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathedit.php
More file actions
124 lines (101 loc) · 5.14 KB
/
edit.php
File metadata and controls
124 lines (101 loc) · 5.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php
# подготовка подключения
require 'sys/processing.php';
# массив для хранения данных о пользователе
$user = array();
# переменная для хранения сообщений
$message = false;
# если в массиве POST есть переменная name и она не пустая
# значит у нас создание нового или редактирование уже существующего пользователя
if (isset($_POST['name']) && $_POST['name']) {
# заполняем массив данными из POST
$user['name'] = $_POST['name'];
$user['email'] = $_POST['email'];
$user['location'] = $_POST['location'];
$user['birthday'] = $_POST['birthday'];
$user['phone'] = $_POST['phone'];
# если в POST есть id - значит мы сейчас редактируем
# существующего пользователя
if ($_POST['id']) {
# приводим переменную к int (целочисленное значение)
$user['id'] = (int) $_POST['id'];
# делаем запрос в БД
if ($db->update($user, 'id = ' . $user['id'], 1)) {
# если вернуло колличество затронутых строк, значит запись в БД успешно обновлена
$message = 'User "' . $user['name'] . '" (id:' . $user['id'] . ') has been updated!';
}
# если нет id в POST, значит мы создаем нового пользователя
} elseif ($id = $db->insert($user)) {
# пишем в куку сообщение о успешном создании пользователя
# почему в куку? потому что потом мы будем делать редирект на другую страницу
# и уже там выведем сообщение
setcookie('flash_message', 'User "' . $user['name'] . '" (id ' . $id . ') has been created!');
# делаем редирект на список пользователей
header('Location: ./');
}
# если в POST нет name, но в GET есть user,
# значит нам надо получить информацию о конкретном пользователе
} elseif (isset($_GET['user'])) {
# приводим переменную к int (целочисленное значение)
$id = (int) $_GET['user'];
# делаем запрос в БД
$result = $db->select('id = ' . $id);
# если есть результат, помещаем его в переменную $user
if (isset($result[0])) {
$user = $result[0];
}
}
# подключаем header
include 'partials/header.php';
?>
<div class="container">
<div class="row">
<div class="col-sm-6">
<!-- если есть сообщение, выводим его -->
<?php if ($message) { ?>
<div class="alert alert-info" role="alert"><?php echo $message ?></div>
<?php } ?>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<!--
форма для создания нового или редактирования
уже существующего в базе пользователя
-->
<form method="POST">
<input type="hidden" name="id" value="<?php echo isset($user['id']) ? $user['id'] : ''?>">
<div class="form-group">
<label for="user-name">Name</label>
<input type="text" class="form-control" id="user-name" name="name" value="<?php echo isset($user['name']) ? $user['name'] : ''?>" required>
</div>
<div class="form-group">
<label for="user-email">Email</label>
<input type="email" class="form-control" id="user-email" name="email" value="<?php echo isset($user['email']) ? $user['email'] : ''?>" required>
</div>
<div class="form-group">
<label for="user-location">Location</label>
<input type="text" class="form-control" id="user-location" name="location" value="<?php echo isset($user['location']) ? $user['location'] : ''?>" required>
</div>
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label for="user-birthday">Birthday</label>
<input type="text" class="form-control" id="user-birthday" name="birthday" value="<?php echo isset($user['birthday']) ? $user['birthday'] : ''?>" placeholder="yyyy-mm-dd" required>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label for="user-phone">Phone</label>
<input type="text" class="form-control" id="user-phone" name="phone" value="<?php echo isset($user['phone']) ? $user['phone'] : ''?>" placeholder="(xxx) xxx-xx-xx" required>
</div>
</div>
</div>
<a href="./" class="btn btn-default pull-right">Cancel</a>
<button type="submit" class="btn btn-primary">
<?php if (isset($user['id'])) { ?>Edit user<?php } else { ?>Add user<?php } ?>
</form>
</div>
</div>
</div>
<?php include 'partials/footer.php' ?>