如何检查mysql服务器数据库中是否有某个值?

iklwldmw  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(306)

我有一个php/html格式的select选项表单。在选择选项表单中,我将php放在如下位置:

<option name="time" value="0900"><?php $a=$r1; echo $a;?></option>

在上面,我需要一些php代码来执行以下操作:
在我的数据库中搜索值0900;如果找到它,给变量$r1一个空值,这样选项就不会出现,否则给它一个0900的值。
基本上,我需要的是有人告诉我如何在数据库中搜索一个值,并相应地给变量一个值。提前谢谢。
编辑:这是我所拥有的

$conn= new mysqli($servername, $username, $password, $dbname);

$sql = "SELECT time FROM Guidance";

$result = $conn->query($sql);

在我的数据库里,唯一的东西是“沃尔沃”;但当我回显$结果时,我什么也得不到。为什么?

fykwrbwg

fykwrbwg1#

我想你有table t1 ,和 t1 有列 value1 ,您要在0900上搜索 value1 .
搜索 t1.value1 很好用 SELECT COUNT(*) .
要使选项在找到0900时消失,只需使用 if .

// php code, use PDO for mysql
// this PDO arguments depend on your mysql environment, username, password
$dbh = new PDO('mysql:host=localhost;dbname=testdb;charset=utf8mb4', 'username', 'password');
$sql = 'select COUNT(*) name from t1 where value1 = 0900';
$stmt = $dbh->query($sql);
$count = $stmt -> fetchColumn();
// $count is a value how many 0900 has found.

if ($count > 0) {
  $r1 = null;
else {
  $r1 = '0900';
}

// output html
<?php if ($r1 != null) { ?>
  <option name="time" value="0900"><?php $a=$r1; echo $a;?></option>
<?php } ?>

相关问题