0

ギャングと呼ばれる構造に結果がある場合、users と呼ばれる SQL テーブルを検索し、その結果が探しているものである場合は、見つかったすべての結果をリストに表示します。これが私がこれまでに持っているコードです魔女が機能していません助けてくださいありがとう

$sql = "SELECT * FROM users WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."'";
$query = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_object($query);
$id = htmlspecialchars($row->id);
$userip = htmlspecialchars($row->userip);
$name = htmlspecialchars($row->name);
$sitestate = htmlspecialchars($row->sitestate);
$password = htmlspecialchars($row->password);
$mail = htmlspecialchars($row->mail);
$money = htmlspecialchars($row->money);
$exp = htmlspecialchars($row->exp);
$rank = htmlspecialchars($row->rank);
$health = htmlspecialchars($row->health);
$points = htmlspecialchars($row->points);
$profile = htmlspecialchars($row->profile);
$gang = htmlspecialchars($row->gang);

<?php 
$sql = "SELECT * FROM Gangs WHERE name='".mysql_real_escape_string($_GET['name'])."'";
$query = mysql_query($sql)  or die(mysql_error());
$row = mysql_fetch_object($query);
$Gang_name = htmlspecialchars($row->name);
$Gang_owner = htmlspecialchars($row->owner);
$Gang_money = htmlspecialchars($row->money);
$Gang_exp = htmlspecialchars($row->exp);
$Gang_level = htmlspecialchars($row->level);
$Gang_profile = htmlspecialchars($row->profile);
?>

<?php
$result = mysql_query("SELECT * FROM users WHERE gang = '".$gang_name."'");
if ($result) {
      while($row = mysql_fetch_assoc($result)) {
           $members = $row['name'];
      }
}
?>
<?php echo $members; ?>
4

1 に答える 1

2

結合で SELECT クエリを使用する必要があるようです

"SELECT * FROM users as u JOIN gangs as g on u.gang = g.name WHERE g.name = '".mysql_real_escape_string($_GET['name'])."'";

結果行の配列を構築しようとしている場合は、次のようになります。

$members = $row['name'];

次のようにする必要があります。

$members[] = $row['name'];

また、ループの前に $memberes 変数を宣言する必要があります

$members = array();
于 2012-08-02T20:35:03.667 に答える