PHP WebShell
Текущая директория: /var/www/bitcardoApp/backyard/models/rates
Просмотр файла: swap_directions.php
<?php
// backyard/models/rates/swap_directions.php
if (!isset($conn)) { include_once '../../config/db_config.php'; }
function sd_h($s){ return htmlspecialchars((string)$s, ENT_QUOTES, 'UTF-8'); }
function sd_all(mysqli $conn): array {
$rows = [];
$sql = "SELECT swad_id, from_coin, to_coin, is_active, created_at FROM swap_directions ORDER BY swad_id";
if ($res = mysqli_query($conn, $sql)) {
while ($r = mysqli_fetch_assoc($res)) $rows[] = $r;
mysqli_free_result($res);
}
return $rows;
}
function sd_create(mysqli $conn, string $from, string $to): array {
$from = strtoupper(trim($from));
$to = strtoupper(trim($to));
if ($from === '' || $to === '' || $from === $to) {
return ['ok'=>false,'msg'=>'Invalid pair'];
}
$fs = mysqli_real_escape_string($conn, $from);
$ts = mysqli_real_escape_string($conn, $to);
// prevent duplicates
$q = "SELECT 1 FROM swap_directions WHERE from_coin='{$fs}' AND to_coin='{$ts}' LIMIT 1";
$r = mysqli_query($conn,$q);
if ($r && mysqli_fetch_row($r)) { if($r) mysqli_free_result($r); return ['ok'=>false,'msg'=>'Pair already exists']; }
if($r) mysqli_free_result($r);
$ins = "INSERT INTO swap_directions(from_coin,to_coin,is_active,created_at) VALUES('{$fs}','{$ts}',1,NOW())";
if (!mysqli_query($conn,$ins)) return ['ok'=>false,'msg'=>'Insert failed'];
return ['ok'=>true,'id'=>(int)mysqli_insert_id($conn)];
}
function sd_toggle(mysqli $conn, int $id): array {
$id = (int)$id;
$q = "UPDATE swap_directions SET is_active = IF(is_active=1,0,1) WHERE swad_id={$id} LIMIT 1";
if (!mysqli_query($conn,$q)) return ['ok'=>false,'msg'=>'Toggle failed'];
return ['ok'=>true];
}
function sd_delete(mysqli $conn, int $id): array {
$id = (int)$id;
$q = "DELETE FROM swap_directions WHERE swad_id={$id} LIMIT 1";
if (!mysqli_query($conn,$q)) return ['ok'=>false,'msg'=>'Delete failed'];
return ['ok'=>true];
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!