PHP的初学者问题&;MySQL

PHP的初学者问题&;MySQL,php,mysql,html,css,Php,Mysql,Html,Css,我对PHP和MySQL非常陌生。只是为朋友设计网站作为一种爱好,所以任何帮助都是非常感谢的。当我的页面上有一个简单的联系人表单时,我在提交信息时不断收到错误消息。以下是PHP: <?php $con = mysql_connect("localhost","user","password"); if (!$con)) { die('Could not connect: ' . mysql_error()); } mysql_select_db("database_name", $co

我对PHP和MySQL非常陌生。只是为朋友设计网站作为一种爱好,所以任何帮助都是非常感谢的。当我的页面上有一个简单的联系人表单时,我在提交信息时不断收到错误消息。以下是PHP:

<?php
$con = mysql_connect("localhost","user","password");
if (!$con))  {
die('Could not connect: ' . mysql_error());
 }

mysql_select_db("database_name", $con);

$sql="INSERT INTO contact (first_name, last_name, email, phone, message)
VALUES
('$_POST[first_name]','$_POST[last_name]','$_POST[email]','$_POST[phone]','$_POST[message])";

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

mysql_close($con);
?>

这是我的代码,但是当我检查我的数据库时,列出的唯一信息是电子邮件地址

如果数据库服务器与web服务器位于同一台计算机上,则本地主机是正确的。当你建立数据库时,它应该告诉你需要连接到什么地方

除此之外,逃避你的-----------------ing输入


认真地说,使用这些变量并彻底清洗它们,然后将它们连接到查询中。稍后您将感谢我。

localhost
如果数据库服务器与web服务器位于同一台计算机上,则是正确的。当你建立数据库时,它应该告诉你需要连接到什么地方

除此之外,逃避你的-----------------ing输入

认真地说,使用这些变量并彻底清洗它们,然后将它们连接到查询中。您稍后会感谢我。

您的if语句中有一个额外的

if (!$con))  {
if (!$con)  {
应该是

在if语句中有一个额外的

if (!$con))  {
if (!$con)  {
应该是

比如说

       if (!$con){

        //do something

           }
比如说

       if (!$con){

        //do something

           }

它的疑问是错误的,你有一个;这是在查询的中间。

$sql="INSERT INTO contact (first, last, email, phone);
   VALUES
('$first','$last','$email','$number')";
注意第一行的末尾。将此更改为:

$sql="INSERT INTO contact  VALUES
('$first','$last','$email','$number')";

它的疑问是错误的,你有一个;这是在查询的中间。

$sql="INSERT INTO contact (first, last, email, phone);
   VALUES
('$first','$last','$email','$number')";
注意第一行的末尾。将此更改为:

$sql="INSERT INTO contact  VALUES
('$first','$last','$email','$number')";

问题是你的第三行

$con = mysql_connect("localhost","user","password");
if (!$con))  {
die('Could not connect: ' . mysql_error());
}
在您的第三行中有一个额外的结束括号
。拆下它,然后瞧


希望这能有所帮助。

问题在于你的第三行

$con = mysql_connect("localhost","user","password");
if (!$con))  {
die('Could not connect: ' . mysql_error());
}
在您的第三行中有一个额外的结束括号
。拆下它,然后瞧


希望这能有所帮助。

当你获得托管时,你没有收到任何包含信息的电子邮件吗?如果你真的告诉我们错误,通常是通过复制和粘贴来告诉我们,这通常会有所帮助。这使得帮助您减少了繁琐的工作,因为我们可以在不阅读代码块的情况下告诉您答案。错误是第3行的/home2/__/public_html/insert.php中的Parse error:syntax error,unexpected')!在
'$\u POST[message])
之后的查询中也缺少了
'
。当你得到主机时,你没有收到任何包含信息的电子邮件吗?如果你真的告诉我们错误,通常是通过复制和粘贴它,这通常会有所帮助。这使得帮助您减少了繁琐的工作,因为我们可以在不阅读代码块的情况下告诉您答案。错误是第3行的/home2/__/public_html/insert.php中的Parse error:syntax error,unexpected')!在
'$\u POST[message])之后的查询中也缺少
'
Id还添加了“不要使用ext/mysql”!使用Mysqli或PDO:-)@prodigitalson只要你知道如何使用它,MySQL(或任何其他系统)没有什么问题。同时去掉HTML特殊字符。即:$message=nl2br(htmlspecialchars(stripslashes($message))@mjsa-Eeek!(1) 不要使用nl2br,除非你是认真的(而且它既便宜又脏,使用能将文本转换成真正HTML的东西(带段落!)要好得多。(2)一定要使用
htmlspecialchars
,但必须在将文本插入HTML文档之前使用(在插入数据库之前不要这样做)。(3)除非服务器打开了魔引号,否则不要使用
stripslashes
(即使这样,禁用魔引号也会更好,因为它们比它们更麻烦)。MySQL没有任何问题……但是ext/MySQL扩展已经过时,除非你支持传统软件,否则使用它是荒谬的。在这一点上尝试学习它更荒谬。我还要补充一点:“不要使用--ing ext/MySQL”!使用Mysqli或PDO:-)@prodigitalson MySQL没有任何问题(或任何其他系统)只要你知道如何使用它。也可以去掉HTML特殊字符。例如:$message=nl2br(htmlspecialchars(stripslashes($message));@mjsa-Eeek!(1)不要使用nl2br,除非你真的这么想(而且它既便宜又脏,使用能将文本转换成真正HTML的东西(带段落!)要好得多。(2)请务必使用
htmlspecialchars
,但只能在将某些文本插入HTML文档之前使用(在插入数据库之前不要这样做)。(3)除非服务器已打开魔引号,否则不要使用
stripslashes
(即使禁用魔引号,也比禁用魔引号更麻烦).MySQL没有任何问题…但是ext/MySQL扩展已经过时了,除非你支持传统软件,否则使用它是荒谬的…现在尝试学习它更荒谬。