Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建空列的mySQL查询_Mysql_Html - Fatal编程技术网

创建空列的mySQL查询

创建空列的mySQL查询,mysql,html,Mysql,Html,我试图从表单中捕获数据并将其输入数据库,但当我试图将数据输入到列中时,我只得到uid,其余列为空 下面是一些代码: mysql_query("INSERT INTO personal_information (uid, name, surname, email, cell) VALUES ('".$uid."', '".$name."', '".$surname."', '".$email."', '".$cell."' )") or die(mysql_error()); mysql_qu

我试图从表单中捕获数据并将其输入数据库,但当我试图将数据输入到列中时,我只得到uid,其余列为空

下面是一些代码:

mysql_query("INSERT INTO personal_information (uid, name, surname, email, cell) 
VALUES ('".$uid."', '".$name."', '".$surname."', '".$email."', '".$cell."' )")
or die(mysql_error());

mysql_query("INSERT INTO consumer_related_info (uid) 
VALUES ('".$uid."')")
or die(mysql_error());

mysql_query("INSERT INTO family_scenario (uid) 
VALUES ('".$uid."')")
or die(mysql_error());

mysql_query("INSERT INTO lifestyle_activities (uid) 
VALUES ('".$uid."')")
or die(mysql_error());

mysql_query("INSERT INTO occupational_information (uid) 
VALUES ('".$uid."')")
or die(mysql_error());

mysql_query("INSERT INTO sport_activities (uid) 
VALUES ('".$uid."')")
or die(mysql_error());

mysql_query("INSERT INTO vehicle_details (uid) 
VALUES ('".$uid."')")
or die(mysql_error());
我可能做错了什么?

用php发送数据? 然后读 及

编辑 对于给定的信息,它更多的是猜测,而不是调试。但我敢打赌,
register\u globals
是这里的问题

怎么办?简单使用
superglobals

// assumed the form method is post
$name = mysql_real_escape_string(trim($_POST['name']));
// and so on
如果这没有帮助:用伪值填充表单,转储请求数据(并将其发布在此处)

echo''
. 打印请求($请求,真)
. '';
出口

不相关提示:确保使用
addslashes对插入的变量进行转义,以防止大多数注入攻击


实际上。。。这可能很有关系。引号和其他未转义字符可能会导致字符串“中断”,并导致MySQL语法错误。

试试看您的变量是否分配了值以及它是什么

$query = sprintf( "INSERT INTO personal_information (uid,name,surname,email,cell) VALUES ('%s', '%s', '%s', '%s', '%s')",
mysql_real_escape_string($uid),
mysql_real_escape_string($name),
mysql_real_escape_string($surname),
mysql_real_escape_string($email),
mysql_real_escape_string($cell));

mysql_query($query) or die (mysql_error());
检查输出

然后说。我会像这样执行我的查询

通过转义所有输入,您就可以安全地防止mysql\u注入(我不知道您是否完全安全)。这是非常重要的!!我不知道你对mysql注入有多熟悉,但通过你的设置,黑客很容易就能查看你的整个数据库!!我相信你不希望发生这种事:)我说得对吗


祝你今天愉快

您使用的所有变量都肯定包含值吗?如果在构建SQL语句之前立即回显它们的内容,结果会是什么?
INSERT
语句是否产生错误?另外,您最好通过或直接使用。register\u globals的值是多少(请参阅php.ini或
phpinfo()
)我从表单中获取所有数据,但由于某种原因它不会进入数据库,它只显示空列!你能发布一个post值的示例吗?你有没有试过逃避输入?
$values = array( $uid, $name, $surname, $email, $cell );
print_r( $values );
$query = sprintf( "INSERT INTO personal_information (uid,name,surname,email,cell) VALUES ('%s', '%s', '%s', '%s', '%s')",
mysql_real_escape_string($uid),
mysql_real_escape_string($name),
mysql_real_escape_string($surname),
mysql_real_escape_string($email),
mysql_real_escape_string($cell));

mysql_query($query) or die (mysql_error());