ajax导致mysql重复输入?

时间:2015-06-25 09:33:42

标签: javascript mysql ajax

我正在使用以下ajax脚本来运行我的MySQL函数并在我的表中插入一个条目。它工作正常,除了它重复输入两次。

<script type="text/javascript">
$(document).ready(function() {
    $('#support1').click(function(e) {
        var sel_stud = "support1";
        $.ajax({
            type: "POST",
            url: "include/run_support_log.php",
            data: 'theOption=' + sel_stud,
            success: function() {
                $('#support_content').show();
            }
        });
    });
});
</script>

MySQL的:

<?php 
session_start();
include 'config.php';

$type = $_POST['theOption'];
if($type == "support1"){
$type = "Phone Support";
}



$random = 'S' . substr( md5(rand()), 0, 7); echo $random;


$query = "INSERT INTO supplier_log (id, reference, user_id, date, activity_type) VALUES ('', '$reference','{$_SESSION['id']}', now(), '$type')";
$result = mysql_query($query);

if($result) {
    echo 'success';
}

?>

请有人告诉我哪里出错了?提前致谢

2 个答案:

答案 0 :(得分:0)

您插入id =''的元素。 所以每个元素都有相同的id。

可能是你改变

"INSERT INTO supplier_log (id, reference, user_id, date, activity_type) VALUES ('', '$reference','{$_SESSION['id']}', now(), '$type')";

通过

"INSERT INTO supplier_log (reference, user_id, date, activity_type) VALUES ( '$reference','{$_SESSION['id']}', now(), '$type')";

并让id由MySQL生成

答案 1 :(得分:0)

您确定该行吗

include 'config.php';

是不是第二次包含你的脚本?

它不应该,因为它会造成无限循环。但请查看以防万一。