Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.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

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代码没有在mysql数据库中输入任何内容_Php_Database_Mysqli - Fatal编程技术网

为什么我的PHP代码没有在mysql数据库中输入任何内容

为什么我的PHP代码没有在mysql数据库中输入任何内容,php,database,mysqli,Php,Database,Mysqli,由于某些原因,我无法将POST字符串值或任何与此相关的值发送到我的数据库,所有列都使用具有正确长度的varchar,并且我非常确定我正确设置了SQL查询语句。我已经查找并找到了与此相近的问题答案,但它仍然不起作用,而且我也多次运行了它,没有语法错误 下面是我的代码: Apply.php <?php $required = array('name', 'age', 'position', 'email', 'desc'); $name= $_POST["name"]; $age= $_POS

由于某些原因,我无法将POST字符串值或任何与此相关的值发送到我的数据库,所有列都使用具有正确长度的varchar,并且我非常确定我正确设置了SQL查询语句。我已经查找并找到了与此相近的问题答案,但它仍然不起作用,而且我也多次运行了它,没有语法错误

下面是我的代码:

Apply.php

<?php
$required = array('name', 'age', 'position', 'email', 'desc');
$name= $_POST["name"];
$age= $_POST["name"];
$email= $_POST["email"];
$position= $_POST["position"];
$desc= $_POST["desc"];
$error = false;
foreach($required as $field) {
  if (empty($_POST[$field])) {
    $error = true;
  }
}

if ($error) {
  echo "You must fill in all fields";
} 
else {
  echo "Application Submitted, You will receive an email with a validation code in 1-2 days </br>Ask the owner in game for faster service";
    mysqli_connect("localhost","root","password","apply");
    mysqli_query("INSERT INTO applications (name, age, email, position, desc) VALUES ('$name', '$age', '$email', '$position', '$desc')");
    mysqli_close();
  }
?>
<?php
$username="root";
$password="password";
$database="apply";
mysql_connect(localhost,$username,$password);
$result = mysqli_query("SELECT * FROM applications") ; 

echo "<table border='1'> 
<tr> 
<th> Name </th> 
<th> Age </th> 
<th> Email Address </th> 
<th> Position </th> 
<th> Reasoning </th> 
</tr>"; 

while($row = mysqli_fetch_array($result)) 
{ 
echo "<tr>"; 
echo "<td>" . $row['Name'] . "</td>"; 
echo "<td>" . $row['age'] . "</td>"; 
echo "<td>" . $row['email'] . "</td>"; 
echo "<td>" . $row['position'] . "</td>"; 
echo "<td>" . $row['desc'] . "</td>"; 
echo "</tr>"; 

} 

echo "</table>";
mysqli_close(); 
?>

阅读mysqli\u查询的手册


检查
mysql\u query()
中的错误。如果返回
false
,则打印
mysql\u error()
查看错误。在第二个脚本中,您混合了
mysql
mysqli
函数。这是行不通的。你需要做一个MySQL no no。请查看此PHP文档以提高脚本的安全性。如果你非常容易受到SQL注入攻击,那么如果你还没有受到攻击,你就会被黑客攻击。使用准备好的/参数化的查询可以完全避免此问题。另外,在将任意字符串输出到HTML中时,请确保使用
htmlspecialchars()
以确保生成有效的HTML,并避免人们在你的应用程序中插入自己的JavaScript。谢谢,这确实是个问题,因为我是php新手。我修改的原始代码在$link和查询之间没有逗号,我删除了它,假设它不需要。
$link=mysqli_connect("localhost","root","password","apply");
mysqli_query($link,"INSERT INTO applications (name, age, email, position, desc) VALUES ('$name', '$age', '$email', '$position', '$desc')");
mysqli_close();
$mysqli=mysqli_connect("localhost","root","password","apply");
$mysqli->query("INSERT INTO applications (name, age, email, position, desc) VALUES ('$name', '$age', '$email', '$position', '$desc')");
mysqli_close();