<?php foreach ($_SESSION['arr'] as $gorod) : ?>
<tr>
<td><?php echo $gorod['id']; ?></td>
<td><?php echo $gorod['name']; ?></td>
<td><?php echo $gorod['area']; ?></td>
<td><?php echo $gorod['population']; ?></td>
</tr>
<?php endforeach; ?>
} else if (empty($name)) {
$mysql = "SELECT * FROM city";
<?php
// список допустимых значений переменной $channel
$allow_channel_list = ["svm.sport" , "svm.music" , "svm.loop"];
// значение по умолчанию
$default_channel = "svm.best";
// если в GET-параметрах присутствует ключ channel и значение по ключу входит в список допустимых значений...
if(isset($_GET['channel']) && in_array($_GET['channel'], $allow_channel_list))
{
// ..., то переменная равняется этому значению
$channel = $_GET['channel'];
}
else // иначе, берем значение по умолчанию
$channel = $default_channel;
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $channel; ?></title>
<!-- ... БЛА-БЛА-БЛА -->
<?php
// <!-- ... БЛА-БЛА-БЛА -->
?>
test.php?channel=svm.best
2 + 8 = ?
select n.*, -- атрибуты новости
p1.*, -- атрибуты автора
p2.*, -- атрибуты исполнителя
s.* -- атрибуты статуса новости
from news n
join status s on s.statusId = n.statusId
left join people p1 on p1.peopleId = n.authorId
left join people p2 on p2.peopleId = n.executorId
where p1.fullName like :search
or p2.fullName like :search
select *
from news
select n.*, -- атрибуты новости
s.* -- атрибуты статуса новости
from news n
join status s on s.statusId = n.statusId
select n.*, -- атрибуты новости
s.* -- атрибуты статуса новости
from news n
join status s on s.statusId = n.statusId
where s.statusId = :statusId
select n.*, -- атрибуты новости
p1.*, -- атрибуты автора
p2.*, -- атрибуты исполнителя
s.* -- атрибуты статуса новости
from news n
join status s on s.statusId = n.statusId
left join people p1 on p1.peopleId = n.authorId
where p1.fullName like :search
Я нажимаю добавить картинку, она уходит на сервер, там ей присваивается новое уникальное имя,
<?php
if(isset($_POST['checkout']))
{
// получили параметр, который используется в AJAX - отдаем только данные (числа, строки, или json объекты)
echo 'posted:'.$_POST['checkout'];
}
else
{
// не получили специфичных для ajax параметров - отдаем клиенту обычный HTML
echo '<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div><?php echo $test ?></div>
<script type="text/javascript" src="js/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="script.js"></script>
</body>
</html>';
}
?>
<?php echo $field_label == "название лейбла" ? "": $field_label; ?>
$filtered_arr = array_filter($arr, function ($el) use ($arr2) {
return !in_array($el['number'], $arr2);
}
});
echo '"', __NAMESPACE__, '"';
$page_path = ['page1', 'subpage2'];
$site_menu =
[
'page1' =>
[
'title' => 'Страница 1',
'child' =>
[
'subpage2' => ['title' => 'Субстраница 2', 'child' => []]
]
],
'page2' =>
[
'title' => 'Страница 2',
'child' => []
],
];
// рекурсивная функция для получения сверстанного меню из структуры
function get_main_menu(
$curr_menu, //часть меню текущего уровня
$level, // номер текущего уровня
$menu_path, // путь к текущему уровню меню
&$page_path // путь к текущей странице
)
{
$out = '';
if(count($curr_menu) > 0)
{
$out .= '<ul class="main-menu main-menu_level-'.$level.'">';
foreach($curr_menu as $key_item => $menu_item)
{
$out .= '<li class="main-menu__item '
.($page_path[$level] == $key_item ? 'main-menu__curent' : '') // определяем текущий пункт меню
.'"><a href="'.$menu_path.'/'.$key_item.'">'.$menu_item['title'].'</a>';
get_main_menu($curr_menu['child'], $level + 1, $menu_path.'/'.$key_item, $page_path); // рекурсивный вызов функции для прорисовки следующего уровня
$out .= '</li>';
}
$out .= '</ul>';
}
return $out;
}
// получаем html-фрагмент меню по структуре
$out_site_menu = get_main_menu($site_menu, 0, '', $page_path);
$protocol = $_SERVER['HTTPS'] == 'on' ? 'https' : 'http';
$host = $_SERVER['HTTP_HOST'];
$path = $_SERVER['SCRIPT_NAME'];
/****/
// Что-то сделать с $protocol, $host, $path а может что-то еще забрать из $_GET, $_POST, $_FILES....
/****/
header('location: '.$protocol.'://'.$host.$path);
$rows = /* тут выполняется запрос для получения данных */;
$out_data = []; // массив выходных данных
foreach($rows as $row)
{
$order = &$out_data[$row['order_id']]; // ссылка на элемент массива заказа
$order['order_id'] = $row['order_id'];
$order['firstname'] = $row['firstname'];
$order['lastname'] = $row['lastname'];
$order['telephone'] = $row['telephone'];
if(!isset($order['products'])) $order['products'] = []; // этот if нужен, если обязательно наличие ключа products с пустым массивом, если в выборке возможны пустые реквизиты продукта.
if(!is_null($row['product_id']))
{
$product = &$order['products'][$row['product_id']]; // делаем ссылку на элемент массива products с уникальным ключом product_id
$product['product_id'] = $row['product_id'];
$product['sku'] = $row['sku'];
$product['quantity'] = $row['quantity'];
// ... таким же способом можно делать более глубокие ссылки в product, если в этом элементе понадобится массив данных
unset($product); // уничтожайте ссылку в конце цикла, иначе не сможете переиспользовать переменную $product за циклом.
}
unset($order);
}
<?php
// считаем, что данные пришли по POST-у
if(isset($_POST['submit'])) // проверяем, что приехали данные формы по submit, в кнопке сабмита атрибут name должен иметь значение submit
{
$inserted_user_count = 0;
if(isset($_POST['selected_users'])) // присутствуют отмеченные пользователи
{
$pdo = new PDO(параметры подключения к базе);
foreach($_POST['selected_users'] as $selected_user_id)
{
$stmt = $pdo->prepare('insert into ваша таблица (атрибуты таблицы) values (значения атрибутов таблицы, кроме user_id, :user_id)');
$stmt->bindParam(':user_id', $selected_user_id, PDO::PARAM_INT);
// еще байндим какие-то параметры у запроса, если есть плейсхолдеры, кроме :user_id.
$stmt->execute(); // наконец, выполняем запрос
$pdo->commit(); // фиксируем изменения в базе данных, если у вас соединение открыто не в режиме автокамита
$inserted_user_count++;
}
$pdo = null; // закрываем соединение с базой
}
echo 'Обработано пользователей: '.$inserted_user_count;
}
?>