gpt4 book ai didi

javascript - 提交表单后如何检查数据库中存在的文本框值

转载 作者:行者123 更新时间:2023-12-03 04:08:41 24 4
gpt4 key购买 nike

我在表单中有这个 HTML 代码,我想检查用户输入的这个值是否已经存在于数据库中。

<tr height="50">
<td valign="top"><label for="CINumber"><span style="color:red">*</span>CI Name:</label></td>
<td><input type="text" id="CINumber" name="CINumber"></td>
</tr>

我有这个``JavaScript 函数用于提交表单值:

function submit(){
var cNumber = document.getElementById("CINumber").value;
//many form value within this function but I showed this value only cause this value need to check when click submit button.
$.ajax({
url: 'PHPMethodCalls_AL.php',
type: 'post',
data: {'action':'AddNewCI', 'cNumber' : cNumber },
success: function(data,status) {
//alert(data);
if(status == "success"){
alert("CI Name can be assigned");
alert("Successfully Register New CI Record.");
} else {
alert("CI Name is already present!");
return ;
}
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
});
}

我在“PHPMethodCalls_AL.php”网址中调用 PHPMethod 调用..

if($_POST['action'] == "AddNewCI"){
$cNumber = $_POST['cNumber'];
$newCI = AddNewCI($cNumber);
echo json_encode($newCI );
}

之后,我调用与数据库连接的 PHP 函数。

function AddNewCI($cNumber){
global $DB;
if(!empty($cNumber)){
$namequery="SELECT Name from Item where Name='$cNumber'";
$namecheck=mysql_query($namequery);
$row=mysql_num_rows($namecheck);

if($row==0){
echo "success";
$strSql1 ="INSERT INTO Item (Name)VALUES('$cNumber')";
$res1 = $DB->Query($strSql1, false, $err_mess.__LINE__);
}
else {
echo "!success";
}
}
}

点击提交后,我只得到(status == "success")然后弹出2个警告框,即使数据已经存在于数据库中。但是,重复值不会保存在数据库中,因为我为此字段设置了唯一值。请建议我如何获取正确的警报框(如果数据存在),显示“已存在”,如果不“显示成功警报框”...

最佳答案

更改以下代码...

                            url: 'PHPMethodCalls_AL.php',
type: 'post',
data: {'action':'AddNewCI', 'cNumber' : cNumber },

success: function(data) {

if(data == "success"){
alert("CI Name can be assigned");
alert("Successfully Register New CI Record.");
}

无需使用 json_encode ,您可以根据需要直接回显任何值。

if($_POST['action'] == "AddNewCI"){
$cNumber = $_POST['cNumber'];
$newCI = AddNewCI($cNumber);
echo $newCI;
}

更改函数返回值...

function AddNewCI($cNumber){
global $DB;

if(!empty($cNumber)){

$namequery="SELECT Name from Item where Name='$cNumber'";
$namecheck=mysql_query($namequery);
$row=mysql_num_rows($namecheck);
if($row==0){
$strSql1 ="INSERT INTO Item (Name)VALUES('$cNumber')";
$res1 = $DB->Query($strSql1, false, $err_mess.__LINE__);
return "success";
}
else
{
return "error";
}

}
}

关于javascript - 提交表单后如何检查数据库中存在的文本框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44427747/

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