Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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变量为';无法插入到数据库中 提交_Php_Mysql - Fatal编程技术网

PHP变量为';无法插入到数据库中 提交

PHP变量为';无法插入到数据库中 提交,php,mysql,Php,Mysql,执行查询时检查变量的名称 您已经编写了$conn,并且在初始化连接时使用了$con,这有助于: 不要在stackoverflow上放置个人凭据! 变量检查 <form action="main.php" method="POST"> <input type="email" name="email" placeholder="Enter your email"> <img type="image" id="send" src="bs.png" alt=

执行查询时检查变量的名称
您已经编写了$conn,并且在初始化连接时使用了$con,这有助于:

不要在stackoverflow上放置个人凭据! 变量检查

<form action="main.php" method="POST">
    <input type="email" name="email" placeholder="Enter your email">
    <img type="image" id="send" src="bs.png" alt="Submit Form"/>
    <button type="sumbit">Submit</button>
</form>

<?php
$con = 
mysqli_connect("mysql.hostinger.co.uk",
"something","something","something");

$email = $_POST['email'];

$sql = "INSERT INTO emails (email) 
VALUES ('$email')";

$run = mysqli_query($conn, $sql);

header("Location: result.htm");    
$con
。在哪里

$con = 
mysqli_connect("mysql.hostinger.co.uk",
"u394e","ere31","u159il");
拥有
$conn

反勾号

插入到数据库中可以通过使用倒勾来工作。如以下示例所示:

$run = mysqli_query($conn, $sql);
$sql = "INSERT INTO emails (`email`) 
VALUES ('$email')";
检查您的查询

如果查询不起作用,请尝试在查询周围放置一个if语句,并出现sql_错误。示例如下:

$run = mysqli_query($conn, $sql);
$sql = "INSERT INTO emails (`email`) 
VALUES ('$email')";
if(isset($\u POST['submit'])){
$email=$_POST['email'];
$sql=“插入电子邮件(电子邮件)
值(“$email”)”;
如果($con->query($sql)==TRUE){
回声“警报('Uw reactie's toegevoegd.”);
}否则{
echo“Error:”.$sql.“
”$con->Error; } }

希望这有帮助

您的代码有错误,您使用了错误的变量$conn,请将其替换为$con,然后尝试此代码。它起作用了

if(isset($_POST['submit'])) {
    $email = $_POST['email'];

    $sql = "INSERT INTO emails (email) 
    VALUES ('$email')";

    if ($con->query($sql) === TRUE) {
        echo "<script>alert('Uw reactie is toegevoegd.')</script>";
    } else {
        echo "Error: " . $sql . "<br>" . $con->error;
    }
}

提交

检查
$run
的值。失败时,它将返回
false
。调用
mysqli\u error()
以获取描述性错误。我希望您不是有意将凭据发布到数据库…var dump或echo$email并确保您有数据。第二,您应该为此使用准备好的语句,第三,切勿在堆栈溢出上发布您的密码和登录信息。任何错误都会抛出?如果这些是真实的数据库凭据,我会确保您在有人使用它们访问它之前更改它们。编辑堆栈溢出帖子不会阻止某人查看问题的历史记录并查看它们。