php - MySQL 的简单 PHP 表单出错

标签 php jquery mysql database forms

先生们,

我的 PHP 脚本出现错误,可能是查询错误,但我不知道发生了什么。我可以连接数据库,但我仍然从 de "echo ERROR"行得到错误。

有人知道我的代码有什么问题吗?感谢您的帮助!我花了几个小时来解决这个问题,但一无所获。

HTML 格式

<form action="insert-info.php" method="post">
<input class="form1" type="text" value="TEXT ONE" name="textone" onfocus="if (this.value=='NTEXT ONE') this.value='';"/>
<input class="form1" type="text" value="TEXT TWO" name="texttwo" onfocus="if (this.value=='TEXT TWO') this.value='';"/>
<input class="form2" type="text" value="TEXT THREE" name="textthree" onfocus="if (this.value=='TEXT THREE') this.value='';"/>
</form>

数据库连接和插入

<?php

$host="localhost"; // Host name 
$username="***"; // Mysql username 
$password="***"; // Mysql password 
$db_name="***"; // Database name 
$tbl_name="insertinfo"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// Get values from form 
$textone=$_POST['textone'];
$texttwo=$_POST['texttwo'];
$textthree=$_POST['textthree'];

// Insert data into mysql 
$sql="INSERT INTO $tbl_name('textone', 'texttwo', 'textthree') VALUES ('$textone', '$texttwo', '$textthree')";
$result=mysql_query($sql);

// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Successful";
echo "<br />";
echo "<a href='insert.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?> 

<?php 
// close connection 
mysql_close();
?>

数据库结构

#   Type                    Collation   Null            Pattern     Extra
1   id int(4)                           None            (none)      AUTO_INCREMENT
2   textone varchar(50)     utf8_bin    None            (none)  
3   texttwo varchar(50)     utf8_bin    None            (none)
4   textthree varchar(50)   utf8_bin    None            (none)  

最佳答案

看起来问题只是您的 INSERT 查询的列名。你不需要在它们周围加上单引号。

$sql="INSERT INTO $tbl_name(textone, texttwo, textthree) VALUES ('$textone', '$texttwo', '$textthree')";

这应该有效。

编辑:生产代码需要考虑 echo_Me 和 Mayank 的警告和建议!

关于php - MySQL 的简单 PHP 表单出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20119652/

相关文章:

php - 如何从同一个表中使用两个不同的 ORDER by 列进行两个 $db-> 查询,并且彼此独立地存在于一个 php 页面中?

php - 将对象实例化为具有命名空间的类

javascript - 如何从单个常见的 ajax 函数读取响应?

javascript - 在 Greasemonkey 脚本中添加 jQuery 类

php - 在 Sql/php 脚本中创建更具体的报告

php - 如何让表格内容自动以弹出形式显示

php - 如何编写php函数

javascript - 使用 add_widget 方法时 Gridster 网格高度不正确

mysql - 如何获取一个表的第二个寄存器的第五个字段?

php - 获取数据库中的日期时间并将其显示在 Dreamweaver 中的 3 个单独字段中 [年、月、日]