无法使用for()将php数据插入mysql

无法使用for()将php数据插入mysql,php,mysql,Php,Mysql,我尝试用php将数据插入mysql,方法是检查值是否存在,如果没有,它将更新,然后它将插入,但是它失败了我使用for()我的脚本出了什么问题 if(isset($_POST['submit'])){ $fieldA = $_POST['fieldA']; $fieldB = $_POST['fieldB']; $fieldC = $_POST['fieldC']; $fieldD = $_POST['fieldD']; if (empty($fieldA

我尝试用php将数据插入mysql,方法是检查值是否存在,如果没有,它将更新,然后它将插入,但是它失败了我使用for()我的脚本出了什么问题

if(isset($_POST['submit'])){
    $fieldA = $_POST['fieldA'];
    $fieldB = $_POST['fieldB'];
    $fieldC = $_POST['fieldC'];
    $fieldD = $_POST['fieldD'];

    if (empty($fieldA)) {
        echo 'fieldA cannot empty';
    } 
    else 
    {
        for ($i=1; $i<= $nomer; $i++) {
            $query = mysql_query("SELECT * FROM tb1 ".
                "WHERE fieldA = '$fieldA' ".
                "AND fieldB = '$fieldB' ".
                "AND fieldC = '$fieldC' ".
                "AND fieldD = '$fieldD'");
            $get1 = mysql_fetch_assoc($query);
            $get2 = mysql_num_rows($query);

            if ($get2 != 0) {
                mysql_query("UPDATE tb1 SET kd_kelas = '2' ".
                    "WHERE fieldA = '$fieldA' ".
                    "AND fieldB = '$fieldB' ".
                    "AND fieldC = '$fieldC' ".
                    "AND fieldD = '$fieldD'");
            } else {

                mysql_query("INSERT INTO tb1(fieldA, fieldB, ".
                    "fieldC, fieldD) VALUES ".
                    "('$fieldA', '$fieldB', ".
                    "'$fieldC', '$fieldD')");
            }


        }
    }


    //re-direct
    $go = "mydata.php";
    redirect($go); 
}
if(isset($\u POST['submit'])){
$fieldA=$_POST['fieldA'];
$fieldB=$_POST['fieldB'];
$fieldC=$_POST['fieldC'];
$fieldD=$_POST['fieldD'];
if(空($fieldA)){
echo“fieldA不能为空”;
} 
其他的
{

对于($i=1;$i所有与
mysql\u*
相关的方法现在都不推荐使用。请使用
mysqli\u*

请尝试以下代码片段:

if (isset($_POST['submit']) && !empty($_POST['fieldA'])) {

    $fieldA = $_POST['fieldA'];
    $fieldB = $_POST['fieldB'];
    $fieldC = $_POST['fieldC'];
    $fieldD = $_POST['fieldD'];

    for ($i = 1; $i <= $nomer; $i++) {
        $sql = sprintf("SELECT * FROM tb1 WHERE fieldA = '%s' AND fieldB = '%s' AND fieldC = '%s' AND fieldD = '%s'",
            $fieldA, $fieldB, $fieldC, $fieldD);
        $result = mysqli_query($link, $sql);

        if (mysqli_num_rows($result) > 0) {
            $updateSql = sprintf("UPDATE tb1 SET kd_kelas = '2' WHERE fieldA = '%s' AND fieldB = '%s' AND fieldC = '%s' AND fieldD = '%s'",
                $fieldA, $fieldB, $fieldC, $fieldD);
            mysqli_query($link, $updateSql);
        }
        else {
            $insertSql = sprintf("INSERT INTO tb1(fieldA, fieldB,fieldC, fieldD) VALUES ('%s','%s','%s','%s')", $fieldA,
                $fieldB, $fieldC, $fieldD);
            mysqli_query($link, $insertSql);
        }
    }

    //re-direct
    $go = "mydata.php";
    redirect($go);
}

$nomer
的th值是多少?试试
var\u dump($nomer)
使用$get2>0代替$get2!=0。在检查查询之前,您的select查询是否有任何结果condition@ObjectManipulator我使用$nomor++;@ChannaveerHakari从序列号id中获取结果是空的,但它应该是空的。他插入查询,但它不是。循环的目的是什么?我使用php版本5.6,mysql不是吗不再支持并且必须使用mysqli?
$link = mysqli_connect('localhost', 'root', 'password', 'database');