我需要从数据库中只读取一行,并且行生成分隔信息 这是代码:
<?php
session_start();
ob_start();
error_reporting(E_ERROR | E_WARNING | E_PARSE);
ini_set("display_errors", 1);
set_time_limit(10);
// database connection
$sql_ip = "localhost";
$sql_user = "mysql_user";
$sql_password = "mysql_password";
$sql_database = "database_name";
$dbc = mysql_connect($sql_ip, $sql_user, $sql_password);
if (!$dbc) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db($sql_database);
if($_GET["order"]){
if($_SESSION["orders"][$_GET["order"]]=="ASC" || $_SESSION["orders"][$_GET["order"]]==""){
$order=" ".$_GET["order"]." DESC ";
$_SESSION["orders"][$_GET["order"]]="DESC";
}
elseif($_SESSION["orders"][$_GET["order"]]=="DESC"){
$order=" ".$_GET["order"]." ASC ";
$_SESSION["orders"][$_GET["order"]]="ASC";
}
}else{
$order="skillpoints DESC";
}
$sql="SELECT * FROM skillpoints_v2 ORDER BY $order LIMIT 30";
$db=mysql_query($sql);
while($b=mysql_fetch_array($db, MYSQL_ASSOC)) {
$players[]=$b;
}
function convert_steamid($string) {
$steamid = strtolower($string);
$tmp = explode(':',$steamid);
$steamcid = (($tmp[2]*2)+$tmp[1]) + 1197960265728;
$formatted_cid = number_format($steamcid, 0, '.', '');
return 'http://steamcommunity.com/profiles/7656' . $formatted_cid;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>SkillPoints</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table id="mytable" cellspacing="0">
<tr>
<th scope="col" abbr="POSITION">#</th>
<th scope="col" abbr="NICK">NICK</th>
<th scope="col" abbr="KILLS"><a href="?order=kills">KILLS</a></th>
<th scope="col" abbr="DEATHS"><a href="?order=deaths">DEATHS</a></th>
<th scope="col" abbr="HEADSHOTS"><a href="?order=headshots">HEADSHOTS</a></th>
<th scope="col" abbr="KNIFE-KILLS"><a href="?order=knife_kills">KNIFE KILLS</a></th>
<th scope="col" abbr="KNIFE-DEATHS"><a href="?order=knife_deaths">KNIFE DEATHS</a></th>
<th scope="col" abbr="GRENADE-KILLS"><a href="?order=grenade_kills">GRENADE KILLS</a></th>
<th scope="col" abbr="GRENADE-DEATHS"><a href="?order=grenade_deaths">GRENADE DEATHS</a></th>
<th scope="col" abbr="BOMB-EXPLOSIONS"><a href="?order=bomb_explosions">BOMB EXPLOSIONS</a></th>
<th scope="col" abbr="DEFUSED-BOMBS"><a href="?order=defused_bombs">DEFUSED BOMBS</a></th>
<th scope="col" abbr="OWN-ROUNDS"><a href="?order=own_rounds">OWN ROUNDS</a></th>
<th scope="col" abbr="SKILLPOINTS"><a href="?order=skillpoints">SKILLPOINTS</a></th>
</tr>
<?php $i=0;foreach($players as $player){$i++;?>
<tr>
<th scope="row" class="spec<?php print ($i%2==0?'alt':'')?>"><?php print $i?></th>
<td><a href="<?php print convert_steamid($player["authid"])?>" target="_blank"><?php print $player["nick"]?></a></td>
<td><?php print $player["kills"]?></td>
<td><?php print $player["deaths"]?></td>
<td><?php print $player["headshots"]?></td>
<td><?php print $player["knife_kills"]?></td>
<td><?php print $player["knife_deaths"]?></td>
<td><?php print $player["grenade_kills"]?></td>
<td><?php print $player["grenade_deaths"]?></td>
<td><?php print $player["bomb_explosions"]?></td>
<td><?php print $player["defused_bombs"]?></td>
<td><?php print $player["own_rounds"]?></td>
<td><?php print $player["skillpoints"]?></td>
</tr>
<?php }?>
</table>
</body>
</html>
我需要先选择authid,并为每个人生成杀戮,死亡等。 我不知道我能做什么,以及它是如何运作的。
答案 0 :(得分:4)
您的SQL查询存在问题。 您没有使用变量$ order的值。
尝试使用
RewriteEngine on
RewriteRule ^files/Old_Name(.*)$ files/New_Name$1 [NC,L,R=301]
答案 1 :(得分:0)
$sql="SELECT * FROM skillpoints_v2 ORDER BY $order LIMIT 30";
$db=mysql_query($sql);
while($b=mysql_fetch_array($db, MYSQL_ASSOC)) {
$players[]=$b;
}
到
$sql="SELECT * FROM skillpoints_v2 ORDER BY $order LIMIT 30";
$result = $dbc->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
// display your data
}
} else {
echo "0 results";
}