dotibrb048760 2016-09-24 23:45
浏览 40

MySQL查询生成器

i need to read from a database only one row, and the row generate separated the info's This is the code:

<?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>

I need to select authid first, and generate for everyone kills, deaths etc. I don't know what can i do, and how it's works.

</div>
  • 写回答

2条回答 默认 最新

  • dongtun3328 2016-09-24 23:52
    关注

    There is a problem in your SQL Query. You are not using the value of the variable $order.

    Try using

    $sql="SELECT * FROM skillpoints_v2 ORDER BY ".$order." LIMIT 30";
    
    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题