将sql查询转换为php

时间:2016-03-09 12:22:33

标签: php mysql subquery

我的基本问题是php接受子查询吗? 如果它确实如何把这个子查询放在php

SELECT *
FROM login.avalability a
WHERE a.roomid 
IN (
  SELECT r.id
  FROM login.room r
  WHERE status=0
) 
AND a.type='single'
AND a.cin>='2016-05-20' 
AND a.cout<='2016-05-22'

type,cin和cout将作为用户的输入...

如果不是我如何使用PHP执行此查询?

请给我一些代码,因为我是新手......

这是我们的PHP代码

<?php
define('HOST','localhost');
define('USER','root');
define('PASS','');
define('DB','login');
$con = mysqli_connect(HOST,USER,PASS,DB);
$type = $_POST['pincode'];
$cin = $_POST['cin'];
$cout = $_POST['cout'];

$datetime1 = date_create($cin);
$datetime2 = date_create($cout);

$interval = date_diff($datetime1, $datetime2);
$differenceFormat = '%a' ;

$day= $interval->format($differenceFormat);
$sql="SELECT *
 FROM login.avalability a
 WHERE a.roomid 
 IN (
   SELECT r.id
   FROM login.room r
   WHERE status=0
 ) 
 AND a.type='$type'
 AND a.cin>='$cin' 
 AND a.cout<='$cout'";
$res=mysqli_query($con,$sql);
$check=mysqli_fetch_array($res);
$count=mysqli_num_rows($check);
if(isset($check)){
  echo "rooms not available";
}
else
{
  echo "rooms available";
  $insert="INSERT INTO login.avalability(type, cin, cout, days) VALUES ('$type', '$cin', '$cout', '$day')";
  mysqli_query($con,$insert);
}
mysqli_close($con);
?>

0 个答案:

没有答案