2017-10-12 162 views
-3

我有一个插入到数据库中,但是当我点击触发它,把它插入两次,将哑数据低于实际数据的mysqli查询是我的代码MySQL查询执行多个时间

<?php 
$usernme = ($_POST['testify']); 

$id = $_SESSION['XD']; 

$ac = 1; 
$ti = time(); 


$queryNewPlege = "INSERT INTO posts (text, timeline_id, active, time) 
     VALUES ('$usernme', '$id', '$ac', '$ti')"; 

if (mysqli_query($dbhandle, $queryNewPlege)) { 

    $getLastInsertID = mysqli_insert_id($dbhandle); 

    $upQuery = "UPDATE posts SET post_id =$getLastInsertID WHERE id=$getLastInsertID"; 
    mysqli_query($dbhandle, $upQuery); 
} { 

} 
?> 

它做工精细,但插入两次,首先是一个愚蠢的数据,其次是真实的数据,一直在看它一段时间,但仍然不能罚款的错误,请任何帮助,将不胜感激。

+0

更新声明有什么聪明的事情? – madalinivascu

+0

您未上传完整密码 –

+1

哪个查询执行两次?另外,请了解SQL注入以及如何防止它们。对于用户输入的查询,始终使用准备好的语句,您的代码现在非常脆弱。欲了解更多信息,请访问http://bobby-tables.com – Twinfriends

回答

0

先生,您可以尝试下面的代码; e $queryNewPlege = "INSERT INTO posts (text, timeline_id, active, time) VALUES ('$usernme', '$id', '$ac', '$ti')";'

$vars=mysqli_query($dbhandle,$queryNewPlege); if(!$vars){ 

    }else{ $getLastInsertID = mysqli_insert_id($dbhandle); 

    $upQuery = "UPDATE posts SET post_id =$getLastInsertID WHERE id=$getLastInsertID"; 
    mysqli_query($dbhandle, $upQuery); } `  
+0

WTF的人会upvote这个? –

+0

修复它已经没有启动语句与if(isset($ _ POST ['arribute'])),所以当我刷新代码运行的页面。非常感谢您的回答 – Dero3376