Mysql没有插入定义的值
我的字段modelNumber设置为null,我正在通过最后一个查询执行更新。 您认为由于默认值为null,因此不允许插入吗 我的表格结构:Mysql没有插入定义的值,mysql,session,Mysql,Session,我的字段modelNumber设置为null,我正在通过最后一个查询执行更新。 您认为由于默认值为null,因此不允许插入吗 我的表格结构: session_start(); if(!$_SESSION['user_id']) { $_SESSION['user_id'] = rand(1, 1000000); include 'database_connect.php'; mysql_query('INSERT INTO product_views
session_start();
if(!$_SESSION['user_id'])
{
$_SESSION['user_id'] = rand(1, 1000000);
include 'database_connect.php';
mysql_query('INSERT INTO product_views (user_session_id)
VALUES
('.$_SESSION['user_id'].')');
}
$productid = $_GET['name'];
$query = 'SELECT * FROM product_views WHERE user_session_id = '.$_SESSION['user_id'].'';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
mysql_query('UPDATE product_views SET modelNumber="'.$productid.'" WHERE user_session_id="'.$_SESSION['user_id'].'"');
}
我很困惑:
CREATE TABLE `product_views` (
`id` int(10) DEFAULT NULL,
`user_session_id` int(11) DEFAULT NULL,
`product_id` varchar(100) DEFAULT NULL,
`view_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`modelNumber` varchar(...
如果您甚至没有使用$row
,为什么要循环使用此结果集
编辑:我认为这是您真正想要做的:
$query = 'SELECT * FROM product_views WHERE user_session_id = '.$_SESSION['user_id'].'';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
mysql_query('UPDATE product_views SET modelNumber="'.$productid.'" WHERE user_session_id="'.$_SESSION['user_id'].'"');
}
您是否尝试过使用测试数据来消除您正在使用的会话变量成为问题的可能性?是的,它确实将会话id插入到数据库中,但不允许我插入$productid。我没有收到mysql错误,它只是不做任何事情。错误消息是什么?SELECT是否返回任何数据?您是否尝试单独运行SQL更新?您需要提供更多详细信息。任何$\u GET['name']都肯定会返回一个值?是的,$\u GET['name']正在工作我的逻辑是从数据库获取会话id,并根据会话更新记录id@RPM看到我对评论的补充,非常感谢
session_start();
if(!$_SESSION['user_id'])
{
// Get the user ID
$_SESSION['user_id'] = rand(1, 1000000);
require_once('database_connect.php');
// Get the model number and escape it to prevent SQL injection
$model_number = mysql_real_escape_string($_GET['name']);
// Insert a row that associates the user_id with the model number
mysql_query("INSERT INTO product_views (user_session_id,modelNumber) VALUES('{$_SESSION['user_id']}', '$model_number')");
}