0

私は Dreamweaver でプロジェクトを行っていますが、select ステートメントで問題が発生しました。私はこれを持っています

 SELECT *
    FROM client, `statement`
    WHERE client.client_id = `statement`.client_id

これを実行すると、データベース内の全員が選択されます。そこで、このクエリに別の WHERE ステートメントを追加したいと思います。今回は、client.username をセッション変数「MM_Username」と比較します。

だから私はこのようなものを見ています

SELECT *
    FROM client, `statement`
    WHERE client.client_id = `statement`.client_id  AND WHERE client.username = '$_SESSION['MM_Username']'

セッション PHP コードは次のとおりです。

<?php
if (!isset($_SESSION)) {
  session_start();
}
$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";

// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) { 
  // For security, start by assuming the visitor is NOT authorized. 
  $isValid = False; 

  // When a visitor has logged into this site, the Session variable MM_Username set equal to their username. 
  // Therefore, we know that a user is NOT logged in if that Session variable is blank. 
  if (!empty($UserName)) { 
    // Besides being logged in, you may restrict access to only certain users based on an ID established when they login. 
    // Parse the strings into arrays. 
    $arrUsers = Explode(",", $strUsers); 
    $arrGroups = Explode(",", $strGroups); 
    if (in_array($UserName, $arrUsers)) { 
      $isValid = true; 
    } 
    // Or, you may restrict access to only certain users based on their username. 
    if (in_array($UserGroup, $arrGroups)) { 
      $isValid = true; 
    } 
    if (($strUsers == "") && true) { 
      $isValid = true; 
    } 
  } 
  return $isValid; 
}

$MM_restrictGoTo = "myflog.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {   
  $MM_qsChar = "?";
  $MM_referrer = $_SERVER['PHP_SELF'];
  if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
  if (isset($_SERVER['QUERY_STRING']) && strlen($_SERVER['QUERY_STRING']) > 0) 
  $MM_referrer .= "?" . $_SERVER['QUERY_STRING'];
  $MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
  header("Location: ". $MM_restrictGoTo); 
  exit;
}
?>
4

2 に答える 2

0

別のものがあってはなりませんWHERE; ANDあなたはあなたの条件を:と結びつけます

WHERE client.client_id = `statement`.client_id AND client.username = '$_SESSION['MM_Username']'

詳細については、SELECTクエリの構文に使用しているSQLエンジンのSQL構文定義を参照してください。

于 2013-01-17T09:43:24.093 に答える
0

SELECT * FROM client, statementWHERE client.client_id = statement.client_id AND client.username = '$_SESSION['MM_Username']';

または $user_name=$_SESSION['MM_Username']; SELECT * FROM client c, statement s WHERE c.client_id = s.client_id AND c.username = '$user_name';

このクエリを試してください

于 2013-01-17T12:42:05.673 に答える