Чтобы на вкладке response в devtools было json-представление, но чтобы на самой странице клиента(фронтенд) не было никакого json-атак не получится, браузеры не умеют json автоматически преобразовывать к пользовательскому виду.
data:text/html;charset=utf-8;base64,PHNjcmlwdD5hbGVydCgnaGknKTs8L3NjcmlwdD4=
как видишь хабр такие ссылки режет, так как иначе это огромная дыра в безопасности (украсть куки можно) $data = json_decode($json, true);
$result = array_filter(
$data,
function ($value) use ($params) {
if(isset($params["payment"]) && !in_array($params["payment"], $value['payment_methods'])) {
return false;
}
if(isset($params["reviews"]) && $params["reviews"] > $value['reviews']) {
return false;
}
if(isset($params["amount"]) && $params["amount"] > $value['seller_buyer_limit_max']) {
return false;
}
//Код для остальных фильтров если надо
return true;
}
);
function binanceFilterFn($params) {
return function($value) use ($params) {
if(isset($params["payment"]) && !in_array($params["payment"], $value['payment_methods'])) {
return false;
}
//...
}
}
$result = array_filter($data, binanceFilterFn($params));
return "<span class=\"text-muted\">Show:</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='" . $_SERVER['PHP_SELF'] . "?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";
return "<span class=\"text-muted\">Show:</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='{$_SERVER['PHP_SELF']}?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";
return "<span class=\"text-muted\">" . myvalidate($LANG['g_00055']) . "</span> <select class=\"border form-control-sm text-muted\" onchange=\"window.location='" . $_SERVER['PHP_SELF'] . "?page=1&ipp='+this[this.selectedIndex].value+'$this->querystring';return false\">$items</select>";
if (isset($_POST["name"]))
это вообще смешно, я туда могу пробел вставить, или просто прислать пустое значение, как и в описание кстати... про сплошные дыры через инжекции вообще молчу, никаких проверок, про подготовленные выражения тоже никто никогда не слышал... Вылезла такая ошибка после переноса сайта:1) Первое что надо проверить - правильность данных для подключения на новом хостинге.
<?php
$conn = mysqli_connect("localhost", "root", "pass", "table");
if ($conn === false) {
die("Ошибка: " . mysqli_connect_error());
}
mysqli_close($conn);
?>
var_dump($link ); exit();
, будет понятно установилось ли соединение, хотя по уму конечно же надо переписать подключение нормально. Ну и проверить какую переменную вы на самом деле должны использовать - $conn или $link ... // PHP 7.4+
$first = current(array_filter(array($c1, $c2, $c3, $c4), fn($value) => !is_null($value) && $value !== '')));
$pdo->prepare("INSERT INTO `order`(user_id, date, date_end) VALUES(:userId, :date, DATE_ADD(:date, INTERVAL :days DAY))")
->execute(["userId" => 100,
"date" => date("Y-m-d"),
"days" => 10
]);
На сколько правильное решение сформировалось в голове,Достаточно стандартное решение
и как правильно отправить запрос ajax именно на ванильном js?XMLHttpRequest или fetch, по сути разницы нет, единственно надо учесть что данные через фетч по умолчанию попадут в php://input, а не в $_POST, либо нужно формировать запрос с формДата в качестве отсылаемой структуры данных.
получается можно и без бекенда решить задачу?Нет. Не понятно откуда такой вывод...