Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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
Php 变量进入数据库而不通过$\u POST检索_Php_Database_Post - Fatal编程技术网

Php 变量进入数据库而不通过$\u POST检索

Php 变量进入数据库而不通过$\u POST检索,php,database,post,Php,Database,Post,这是可行的,但是如何将变量的值放入数据库而不通过$u POST检索它们呢? 这是php5中的新功能,还是我以前从未见过它以这种方式使用 <!doctype html> <html> <head> <title></title> </head <body> <form action="insert.php" method="post"> First Name: <input type

这是可行的,但是如何将变量的值放入数据库而不通过$u POST检索它们呢? 这是php5中的新功能,还是我以前从未见过它以这种方式使用

  <!doctype html>

 <html>

<head>
<title></title>
</head

<body>
<form action="insert.php" method="post">
    First Name: <input type="text" name="fname" /><br>
    Last Name: <input type="text" name="lname" /><br>
    Username:  <input type="text" name="uname" /><br>

    <input type="submit" name="submit" value="Register"/><br>
</form>

</body>
</html>


因为您在php中使用了here
register globals
选项,该选项现在在新版本的php中被弃用/删除(主要是因为安全问题),它将
$\u POST['fName']
转换为
$fName

您应该始终使用
$\u POST
/
$\u GET


阅读更多信息:

不,这被称为Register Global,很久以前就被弃用了,千万不要使用它

启用时,register_globals将向脚本中注入各种变量,如HTML表单中的请求变量。再加上PHP不需要变量初始化,这意味着编写不安全的代码要容易得多

有关更多信息:

不仅如此,而且永远不要将数据连接到SQL查询中!使用准备好的/参数化的查询来避免SQL注入攻击,只使用普通的软件。@Brad在mysqli或PDO中准备好了/参数化了?我同意@Brad。如果您已经在使用mysqli,请执行额外的一小步并使用参数化查询。mysqli和pdo都可以使用它们。更好的是,您应该始终使用。特别是
filter\u input()
函数。始终清理输入是一个好主意,即使在您认为不必要的情况下也是如此。谢谢,我在PHP方面落后了很多。试图找到现在正在使用的东西。在C++/ASP领域工作了两年
<?php

 $con=mysqli_connect("","","","");
 // Check connection
if (mysqli_connect_errno())
 {
 echo "Failed to connect to MySQL: " . mysqli_connect_error();
 }

$sql="INSERT INTO traders (fname, lname, username)
VALUES
('$fname','$lname','$uname')";

if (!mysqli_query($con,$sql))
{
   die('Error: ' . mysqli_error($con));
} 
echo "1 record added " ;

mysqli_close($con);
?>