2012-05-03 131 views
0

我有一个预订系统,其中一旦用户预订了航班,他们的详细信息将被发送到名为OABS_customers的mySQL表。将PHP变量插入到mySQL表中

它的结构如下:

 
Name   Type(Length) Null  Default 

name   varchar(60)  No  noname 
address1  varchar(60)  No  noaddress 
address2  varchar(60)  No  noaddress2 
county  varchar(60)  No  nocounty 
postcode  varchar(32)  No  nopostcode 
customer  tinyint(4)  No  
seats  varchar(11)  No  0 
number  tinyint(4)  No  0 
class  varchar(11)  No  noclass 
username  varchar(60)  No  nousername 

现在,我的脚本将所有的,没有问题的细节 - 除了一列 - 在username列。我正在使用此代码:$query = "INSERT INTO OABS_customers (username) VALUES ('$user')";(由eggyal提供)接受登录的用户名(存储在Cookie ID_my_site和$user = $_COOKIE['ID_my_site']中 - 我已测试过,它包含登录用户的用户名)以及将其添加到用户名表中,但这似乎不起作用,而是显示默认值nousername

如果有人可以帮助修改这个问题,我将不胜感激。

+0

您是否确实是指“一行称为”id“”,还是应该是“列”? – eggyal

+0

woops,我的坏 - 我的确如此。 – mlazim14

+0

(删除我的答案,因为它不再与您更新的问题相关)。 – eggyal

回答

0

您需要修改您的登录机制以跟踪会话的用户ID。 将ID存储在内存或cookie中。

现在,您可以将用户标识存储到数据库中。

+0

将它存储在cookie中不会特别明智......用户可以自己更改它! – eggyal

+0

如果您将用户标识存储在cookie中,并立即将其保存到数据库中,则不会成为问题。请记住,您需要在每次有人登录时重写cookie。 –

+0

如果您依赖该cookie中的值来为其在会话期间的各个点提供用户ID,并且修改cookie以为您提供虚假ID,那么它可能会导致所有问题...... – eggyal