Php 我的代码无法将数据发送到mysqli数据库,但它不会产生任何错误
我一直有很多问题,这一页,我试图使。我读了很多帖子,但是它 仍然没有我需要的答案。如果有人能帮助我,我将不胜感激。 此表单的数据不会发送到数据库,但不会产生任何错误 我以前的代码版本出现访问错误。然后我修复了它,现在它不会产生错误。Php 我的代码无法将数据发送到mysqli数据库,但它不会产生任何错误,php,mysql,forms,Php,Mysql,Forms,我一直有很多问题,这一页,我试图使。我读了很多帖子,但是它 仍然没有我需要的答案。如果有人能帮助我,我将不胜感激。 此表单的数据不会发送到数据库,但不会产生任何错误 我以前的代码版本出现访问错误。然后我修复了它,现在它不会产生错误。 但它仍然不发送数据。 我将在这里粘贴我的代码。 提前谢谢 <form method="POST" action="#"> Nome: <input type="CHAR" name="nome"> <br>
但它仍然不发送数据。 我将在这里粘贴我的代码。
提前谢谢
<form method="POST" action="#">
Nome:
<input type="CHAR" name="nome">
<br><br>E-Mail:
<input type="text" name= "email">
<br><br>Mensagem:<br>
<textarea name="comentario"></textarea>
<br><br>
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>
<hr>
<?php
$date = date_default_timezone_set('America/Sao_Paulo');
$con=mysqli_connect("localhost","root","","bdcomentarios");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
{
$insert = mysqli_query($con,"INSERT INTO tbcomentarios('nome')");
}
{
$insert = mysqli_query($con,"INSERT INTO tbcomentarios('email')");
}
{
$insert = mysqli_query($con,"INSERT INTO tbcomentarios('comentario')");
}
{
$insert = mysqli_query($con,"INSERT INTO
tbcomentarios('date_default_timezone_get('Y/m/d')'");
}
$sql = "SELECT * FROM tbcomentarios ORDER BY id desc";
$executar=mysqli_query($con, $sql);
while( $exibir = mysqli_fetch_array($executar)){
echo $exibir['data'];
echo "</br>";
echo $exibir['nome'];
echo "</br>";
echo $exibir['email'];
echo "</br>";
echo $exibir['comentario'];
echo "</br><hr>";
}
?>
诺姆:
电邮:
菜单:
在将变量输入数据库之前,必须获取post方法传递的变量。请尝试以下操作:
1) 这让PHP表单可以自行提交
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
Nome:
<input type="CHAR" name="nome">
<br><br>E-Mail:
<input type="text" name= "email">
<br><br>Mensagem:<br>
<textarea name="comentario"></textarea>
<br><br>
<input type="submit" value="Enviar">
<input type="reset" value="Limpar">
</form>
非常感谢。这很有效。我只需要使用它,并用$date=date\u default\u timezone\u set('Asia/Tokyo')设置时区;但现在我有另一个问题。现在,当我运行页面时,它会自动发送一个空白条目。我曾经尝试过这样使用isset(isset($\u POST[“nome”],$\u POST[“email”],$\u POST[“comentario”],$\u POST[“data”]);因此,如果表单为空,它不会发送表单,并且我的数据库的变量都设置为NOTNULL,但它以某种方式接受数据并存储和显示它。再一次,非常感谢。只需给submit按钮起个名字,例如,然后将我发布的所有php代码放在这个if语句中:if(isset($_POST['submit']){}这意味着:如果按下按钮,考虑论坛提交,获取值并填充DB谢谢。我这样做了,但是它不再显示旧的注释,所以我关闭了表单的PHP,制作了另一个PHP分区,并复制了回音部分(从$SQL到代码的最后一个字符)。并粘贴到它,现在它的工作预期。谢谢你帮助我,我希望你有一个伟大的一天。
<?php
$nome = "";
$email = "";
$comentario = "";
//keep the variables
if(isset($_POST["nome"]))
$nome = $_POST["nome"];
if(isset($_POST["email"]))
$email = $_POST["email"];
if(isset($_POST["comentario"]))
$comentario = $_POST["comentario"];
//current date
$data = date("Y/m/d");
$con=mysqli_connect("localhost","root","","bdcomentarios");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql_insert="INSERT INTO tbcomentarios (data, nome, email, comentario)
VALUES('$data', '$nome', '$email', '$comentario')";
//check the insert into DB
if (mysqli_query($con,$sql_insert)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($con);
}
$sql = "SELECT * FROM tbcomentarios ORDER BY id desc";
$executar=mysqli_query($con, $sql);
while( $exibir = mysqli_fetch_array($executar)){
echo $exibir['data'];
echo "</br>";
echo $exibir['nome'];
echo "</br>";
echo $exibir['email'];
echo "</br>";
echo $exibir['comentario'];
echo "</br><hr>";
}