Graf 210 Report post Posted September 19, 2019 Всем привет. На форуме, как я заметил, большинство(если не все) web-части написаны под PhP 5.x. К примеру возьмем короткий код e1mer для вывода онлайна персонажей: <?php $host = "ХОСТ MSSQL"; $user = "Пользователь MSSQL"; $pass = "Пароль"; @mssql_connect($host, $user, $pass) or die("Ошибка: Невозможно найти хост: {$host}!"); $query = mssql_query("SELECT * FROM GameDB.dbo.character WHERE mem_addr > 1"); if (mssql_num_rows($query) > 0) { for ($i=1; $table = mssql_fetch_assoc($query); $i++) { $page .= "{$table['cha_name']}, {$table['job']} <br />"; } $hide = "Имя игрока, профессия, карта <br />{$page}"; } else { $hide = "Нет игроков в сети!"; } print_r($hide); ?> Прошу показать, как надо изменить данный код, чтобы он соответствовал PHP 7.x. Заранее спасибо. Quote Share this post Link to post Share on other sites
afonya 2 Report post Posted September 19, 2019 <?php $host = "127.0.0.1, 3707"; $database = "GameDB"; $user = "game"; $pass = "Y87dc#$98"; $conn = new PDO("sqlsrv:server=$host ; Database = $database", $user, $pass); $query = "SELECT cha_name, job FROM character WHERE mem_addr > 0"; if ($conn) { $stmt = $conn->query($query); $fetch = $stmt->fetch(PDO::FETCH_ASSOC); if (is_array($fetch)) { echo "Имя игрока, профессия<br />"; while ($row = $stmt->fetch()) { echo $row['cha_name'].", ". $row['job']."<br />\n"; } } else { echo "Нет игроков в сети."; } } else { die("нет соединения."); } ?> Стоит заметить, что job хранит id профессии, а не само название. Я так понимаю, должен быть какой-то дополнительный функционал, чтобы отобразить собственно название профессии. 1 Quote Share this post Link to post Share on other sites
Graf 210 Report post Posted September 19, 2019 @afonya Спасибо. Quote Share this post Link to post Share on other sites
V3ct0r 2,117 Report post Posted September 23, 2019 Привет, @Graf! Из PHP 7.x были удалены старые MSSQL функции и теперь для работы с базами данных предлагается использовать интерфейс PDO. 1 Quote Some useful links / Полезные ссылки Tips for making a topic in 'Questions & Help' / Рекомендации по созданию тем в разделе "Помощь" Server Advertising Section Rules / Правила раздела "Реклама серверов" Available e-mail domains for registration / Допустимые e-mail домены для регистрации User groups / Группы пользователей User ranks / Звания пользователей "Broken" pictures on the forum / "Битые" изображения на форуме Beware of scammers! / Осторожно, мошенники! My developments / Мои разработки Mods for client and server / Моды для клиента и сервера PKOdev.NET website for Tales of Pirates Server / PKOdev.NET веб-обвязка для сервера Пиратии I do not provide any help in private messages and outside the forum. Use 'Questions & Help' section please. Thank you for understanding! Я не оказываю какую-либо помощь в личных сообщениях и вне форума. Пожалуйста, используйте раздел "Пиратия: Помощь". Благодарю за понимание! Share this post Link to post Share on other sites