Jump to content
Sign in to follow this  
Graf

PHP 5.x => PHP 7.x

Recommended Posts

Всем привет.

На форуме, как я заметил, большинство(если не все) 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.

Заранее спасибо.

Share this post


Link to post
Share on other sites
<?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 профессии, а не само название. Я так понимаю, должен быть какой-то дополнительный функционал, чтобы отобразить собственно название профессии.

  • Thanks 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×