gpt4 book ai didi

php - 如果数据库中存在该值,如何验证该值?

转载 作者:行者123 更新时间:2023-11-28 23:24:38 25 4
gpt4 key购买 nike

我想先检查数据是否已经在数据库中。所以这是我的代码:

<?php

include '../session.php';
require_once 'config.php';

$tc_course_name2 = strtoupper($_POST['tc_course_name']);
$tc_course_code2 = strtoupper($_POST['tc_course_code']);

$query = "SELECT COUNT(tc_course_name) FROM tc_courses WHERE tc_course_name = '{$tc_course_name2}'";
$stmt = mysqli_query($conn, $query);
$fetch = mysqli_num_rows($stmt);

if ($fetch > 0) {

echo "Course Name Already Exist";
}

else {
$query_update = "INSERT INTO tc_courses (tc_course_code,tc_course_name) VALUES('$tc_course_code2','$tc_course_name2')";
if (mysqli_query($conn,$query_update)) {
header("Location: ../admin/add_new_training_course.php");
}
else {
echo 'Something went wrong';
}
}

?>

在这段代码中,它总是运行类(class)名称已经存在,即使它没有保存在数据库中。有人可以帮我吗?提前谢谢你

最佳答案

MySQL 的 count(...) 函数将始终返回一个值,因此当您使用 mysqli_num_rows 时,它将始终是 > 0 (查询返回具有 count() 值的行 - 该值可以是 0 或更多...)。

您应该检查 count(...) 的值,看它是否为 >0

改变这个:

$fetch = mysqli_num_rows($stmt);
if ($fetch > 0) {
echo "Course Name Already Exist";
}

$fetch = mysqli_fetch_array($stmt);
if ($fetch[0] > 0) {
echo "Course Name Already Exist";
}

关于php - 如果数据库中存在该值,如何验证该值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39879605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com