在php脚本中,有一个名为$partners_location
的变量。
在SQL中有一个名为plocation
的列。
我想要做的是首先检查plocation
列中是否有与$partners_location
的值匹配的值。
如果它匹配,那么我想继续从PHP脚本本身创建一个新表。
对于这种情况,我知道我们需要的是如果不是,但我不知道如何在这里使用它
这就是我一直在尝试的方式,就像我使用PDO一样。
$dsn= "mysql:dbname=mydatabase";
$name= "root";
$password="****";
$conn = new PDO ($dsn, $name, $password);
...
if($CON = $conn->prepare("SELECT FROM CIDB WHERE plocation='$partners_location'");
$CON->execute();)
{
$tbl=$conn->prepare("CREATE TABLE chat (id INT NOT NULL);
}
else
{
$tbl=$conn->prepare("CREATE TABLE xyz (id INT NOT NULL);
}
我认为这些 if else语句不会起作用。
有人可以建议一些有用的东西吗?
答案 0 :(得分:0)
$CON->execute()
也会返回true
使用COUNT()
检查行是否存在
像这样:
$CON = $conn->prepare("SELECT COUNT(*) as cnt FROM CIDB WHERE plocation = '$partners_location'");
$CON->execute();
$row = $CON-> fetch();
if($row[0] != '0' )
$tbl=$conn->prepare("CREATE TABLE chat (id INT NOT NULL)");
else
$tbl=$conn->prepare("CREATE TABLE xyz (id INT NOT NULL)");
答案 1 :(得分:0)
试试这个:
$CON = $conn->prepare("SELECT COUNT(*) as cnt FROM CIDB WHERE plocation = '$partners_location'");
$CON->execute();
$row = $CON-> fetch();
if($row[0] != '0' )
{
$tbl=$conn->prepare("CREATE TABLE chat (id INT NOT NULL)");
}
else
{
$tbl=$conn->prepare("CREATE TABLE xyz (id INT NOT NULL)");
}
您错过了")