从数据库sql查询中检索数据


retrieving data from database sql query

我想从数据库中获取数据vNamevName=ADMIN_EMAIL所在的列,此行有一列的名称为vValue。还有一列存储电子邮件地址,我想获取该值并将其存储在$toEmail中。

请有人引导我。

这是我的php代码

   $sqldata=mysqli_query($obj,"SELECT * FROM configuration WHERE     vName='ADMIN_EMAIL'");
   $rowcount=mysqli_num_rows($sqldata);
   // $toEmail = "dev.waqas@designbee.us";
   $mailHeaders = "From: " . $_POST["userName"] . "<". $_POST["userEmail"] .">'r'n";
   if(mail($toEmail, $_POST["subject"], $_POST["content"], $mailHeaders)) {
       echo "<p class='success'>Mail Sent.</p>";
    } else {
        echo "<p class='Error'>".$toEmail.".</p>";
    }

您需要使用mysql_fetch_assoc()来获取查询结果。mysql_num_rows()给出查询结果中存在的行数。检查以下代码。

 $sqldata=mysqli_query($obj,"SELECT * FROM configuration WHERE vName='ADMIN_EMAIL'");
 $rowcount=mysqli_num_rows($sqldata);
 if($rowcount > 0)
 {
     $result = mysqli_fetch_assoc($sqldata);
     $toEmail = $result['email']; // Your table column value
     $mailHeaders = "From: " . $_POST["userName"] . "<". $_POST["userEmail"] .">'r'n";
     if(mail($toEmail, $_POST["subject"], $_POST["content"], $mailHeaders)) {
         echo "<p class='success'>Mail Sent.</p>";
     } else {
         echo "<p class='Error'>".$toEmail.".</p>";
     }
  }

您只需要从数据库中提取记录,而您还没有这样做:

 $sqldata=mysqli_query($obj,"SELECT * FROM configuration WHERE vName='ADMIN_EMAIL'");
       $rowcount=mysqli_num_rows($sqldata);
    if($rowcount > 0)
    {
       $result = mysqli_fetch_assoc($sqldata); // fetch records
       $toEmail = $result['vemail']; // Your column name
       $mailHeaders = "From: " . $_POST["userName"] . "<". $_POST["userEmail"] .">'r'n";
       if(mail($toEmail, $_POST["subject"], $_POST["content"], $mailHeaders)) {
           echo "<p class='success'>Mail Sent.</p>";
        } else {
            echo "<p class='Error'>".$toEmail.".</p>";
        }
  }

执行查询后需要获取数据。

$row = $sqldata->fetch_array(MYSQLI_ASSOC);
$toEmail= $row['vName']

最好使用PDO、

try{
      $con=new PDO("mysql::host=localhost;dbname=databasename;","username","password");
      $query="SELECT * FROM configuration WHERE vName='ADMIN_EMAIL";
      $res=$con->query($query);
      $rows=$res->fetchAll(PDO::FETCH_BOTH);
      $email="";
      foreach($rows as $row)
      {
         $email.=$row["useremail"];//you get the user email in the var $email
      }          
//do what you want ....
}
catch(PDOException $e){
    die("error:".$e->getMessage() );
}