以下此功能如何在我的数据库中插入两行?
//called like
save_session_db($_SESSION['user_id']);
function save_session_db($session){
include('includes/db-connect.php');
$connectionInfo = array( 'Database' => 'Belior');
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if($conn){
$date = date('l jS \of F Y');
$_SESSION['model_start_date'] = $date;
$tsql = "INSERT INTO User_Session (user_id, date_created) VALUES ('$session', '$date')";
echo 'insert--<br>'.$tsql;
if(sqlsrv_query($conn, $tsql)) {
return true;
}else{
return false;
}
}else{
return false;
}
sqlsrv_close($conn);
}
不会从其他任何地方调用此函数。当我评论上面的函数调用时,没有任何内容插入到DB中。并且PHP不会抱怨无效的函数调用,这意味着它不会从其他任何地方调用。
当我取消注释函数调用时,插入两行!!
感谢大家的帮助。我确信它很简单,我无法弄明白。它之前正在工作,我不记得我调整了什么。
看起来好像每个页面都加载了两次?!为什么?我在任何地方都没有htaccess文件吗?
127.0.0.1 - - [06/Jan/2010:18:34:00 +0000] "GET /webs/end/create.php HTTP/1.1" 200 44830
127.0.0.1 - - [06/Jan/2010:18:34:06 +0000] "GET /webs/end/create.php HTTP/1.1" 200 44830
答案 0 :(得分:4)
调用此函数的代码是否可能被调用两次?例如,如果您的页面由于某种原因重新加载两次? 尝试在调用此函数的代码中添加一些回显。也许你会得到答案。
答案 1 :(得分:2)
如果真的只执行一次,那么它似乎表明服务器上正在发生的事情。例如,表User_Session
可以具有添加额外行的触发器。虽然,这似乎是你可能知道的事情。