HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.07.2025, 15:56
Сергей Котов
Новичок
Регистрация: 13.03.2024
Сообщений: 13
С нами: 1143080

Репутация: 3
По умолчанию

Бизнесы на карте не отображаются.

дома отображаются но бизнесы нет.

PHP:





Код:
connect_error) {
    die(json_encode(['error' => "Ошибка подключения: " . $mysqli->connect_error]));
}

$mysqli->set_charset("utf8");

$output = [
    'houses' => ['hasOwner' => [], 'noOwner' => []],
    'businesses' => ['hasOwner' => [], 'noOwner' => []]
];

function parseCoords($coordString) {
    $coords = explode(',', $coordString);
    return [
        'x' => isset($coords[0]) ? (float)$coords[0] : 0,
        'y' => isset($coords[1]) ? (float)$coords[1] : 0
    ];
}

$houses = $mysqli->query("SELECT ID, Enter_X, Enter_Y, Name, Owner FROM houses");
if ($houses) {
    while ($house = $houses->fetch_assoc()) {
        $item = [
            'id' => (int)$house['ID'],
            'lx' => (float)$house['Enter_X'],
            'ly' => (float)$house['Enter_Y'],
            'name' => !empty($house['Name']) ? $house['Name'] : 'Дом №'.$house['ID'],
            'owner' => $house['Owner'],
            'hasAuction' => 0,
            'auMinBet' => 0,
            'auTimeEnd' => 0,
            'auStartPrice' => 0
        ];
      
        $category = ($house['Owner'] == "The State" || empty($house['Owner'])) ? 'noOwner' : 'hasOwner';
        $output['houses'][$category][] = $item;
    }
    $houses->close();
}

$businesses = $mysqli->query("SELECT ID, Enter, Exit, Name, Owner, Cost, State FROM businesses ORDER BY ID");
if ($businesses) {
    while ($biz = $businesses->fetch_assoc()) {
        $enter = parseCoords($biz['Enter'] ?? '0,0,0');
        $exit = parseCoords($biz['Exit'] ?? '0,0,0');
      
        $item = [
            'id' => (int)$biz['ID'],
            'lx' => $enter['x'],
            'ly' => $exit['y'],
            'name' => !empty($biz['Name']) ? $biz['Name'] : 'Бизнес №'.$biz['ID'],
            'owner' => $biz['Owner'],
            'cost' => (int)$biz['Cost'],
            'state' => (int)$biz['State'],
            'hasAuction' => 0,
            'auMinBet' => 0,
            'auTimeEnd' => 0,
            'auStartPrice' => 0
        ];
      
        $category = ($biz['Owner'] == "The State" || empty($biz['Owner'])) ? 'noOwner' : 'hasOwner';
        $output['businesses'][$category][] = $item;
    }
    $businesses->close();
}

$mysqli->close();

foreach ($output as &$type) {
    foreach ($type as &$category) {
        if (empty($category)) $category = [];
    }
}

echo json_encode($output, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
?>




 
Ответить с цитированием

  #2  
Старый 27.07.2025, 01:23
Andrey Markelov
Новичок
Регистрация: 25.11.2024
Сообщений: 13
С нами: 773212

Репутация: 18
По умолчанию

Делал интерактивную карту. Можешь взять за пример:

JS - PHP - CSS - HTML - Исходник - Готовый сайт для SAMP проекта

Описание Готовый сайт для SAMP-проекта, разработанный на PHP-фреймворке Laravel. Проект полностью готов к запуску и включает следующие функции: раздел новостей, авторизация в личный кабинет, восстановление пароля, система донатов, история платежей, карта сервера, смена пароля. Сложный функционал...

www.blast.hk


Также используй отладку (Xdebug). Поставь брейкпоинт на строку:

PHP:





Код:
$businesses
=
$mysqli
-
>
query
(
"SELECT ID, Enter, Exit, Name, Owner, Cost, State FROM businesses ORDER BY ID"
)
;


И посмотри, какие данные приходят из базы данных, а также как работает дальнейшая логика.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.