-1

PHPでこのforeachループを使用して、各$_SESSION変数を選択しています

<?php
//reseller info
foreach ($_SESSION["domain.co.uk"]["resellers"] as $reseller)
{
    $sql2="SELECT * from reseller where sequence = '".$reseller."' ";
    $rs2=mysql_query($sql2,$conn) or die(mysql_error());
    $result2=mysql_fetch_array($rs2);
    $ResellerID = $result2["sequence"];
}
?>

明らかに複数あり、ページで確認する必要があります。

if($this_var = $ResellerID)
{
...

しかし、これは if ステートメントを 1 つだけ$ResellerIDチェックします。すべてをチェックする必要があります。

これは可能ですか?

4

3 に答える 3

1

ループifで句を使用します。foreach

<?php
//reseller info
foreach ($_SESSION["integradigital.co.uk"]["resellers"] as $reseller)
{
    $sql2="SELECT * from reseller where sequence = '".$reseller."' ";
    $rs2=mysql_query($sql2,$conn) or die(mysql_error());
    $result2=mysql_fetch_array($rs2);
    $ResellerID = $result2["sequence"];

   if($this_var == $ResellerID)
   {
      // Something to do
   }
}
?>

in_arrayまたは、次のように確認できます。

<?php
   $rid = array();

   foreach ($_SESSION["integradigital.co.uk"]["resellers"] as $reseller)
   {
      $sql2="SELECT * from reseller where sequence = '".$reseller."' ";
      $rs2=mysql_query($sql2,$conn) or die(mysql_error());
      $result2=mysql_fetch_array($rs2);
      $rid[] = $result2["sequence"];
   }

   if(in_array($this_var, $rid))
   {
      // Something to do
   }
?>
于 2013-09-16T07:36:24.960 に答える
0

foreach 内に、条件が満たされた場合にインクリメントする変数 $i を追加します。

$i=0;

<?php
//reseller info
foreach ($_SESSION["integradigital.co.uk"]["resellers"] as $reseller)
{
    $sql2="SELECT * from reseller where sequence = '".$reseller."' ";
    $rs2=mysql_query($sql2,$conn) or die(mysql_error());
    $result2=mysql_fetch_array($rs2);
    $ResellerID = $result2["sequence"];

   if($this_var == $ResellerID)
   {
      $i++;// or change $i to boolean
   }
}

 if($i>0){ 
    //your code here 
 }

?>
于 2013-09-16T07:46:00.290 に答える