-1

我将以下代码用于插入数据库字段的记录。我想更正以下 if 和 else 条件,因为当记录插入数据库时​​,它应该回显 0,但它给出 1。我无法找出问题。请我需要在我的代码中更正。

<?php    /****************dbfile.php****/
$data = $_REQUEST['columns_one'];
$store_data = explode(",",$data);
//print_r($store_data);
$con = mysql_connect("localhost","root","");
mysql_select_db("formbuilder",$con);

$query = "INSERT INTO record(form_id,form_structure) VALUES('1','value')";
$result = mysql_query($query);

if(mysql_num_rows($result)>0)
{
    echo 0;
}
else
{
    echo 1;

}

?>

<script>   <!--- ajax call----->
$.post("dbfile.php", {columns_one:columns_one },  
            function(result){  
                //if the result is 1  
                if(result == 1){
                alert('success');  

                    return true;
                }else{ 
                alert('fail'); 

                    return false;

                }  
</script>
4

2 回答 2

3

您使用了错误的功能。mysql_num_rows不会返回受 INSERT 语句影响的行,请参见此处:

http://www.php.net/manual/en/function.mysql-affected-rows.php

使用mysql_affected_rows.

于 2012-11-01T09:22:40.647 回答
0

您必须在逗号后插入空格!更改这行代码:

$query = "INSERT INTO record(form_id,form_structure) VALUES('1','value')";

使用此代码:

$query = "INSERT INTO record (`form_id`, `form_structure`) VALUES ('1', 'value')";

希望它可以工作 祝你好运...

于 2012-11-01T09:25:58.750 回答