php mysql 插入表工作一次,不再工作?

标签 php html mysql sql

StackOverflow 专业人士。我遇到了一些困难。我只是想为我的目录创建一个简单的添加站点功能,并且我能够创建查询,运行我的程序,并将一列添加到我的表中,没有问题。但后来我尝试添加一个条件来告诉我我的记录是否添加成功。当我这样做时,我运行了它,我的 if 语句运行了“else”,这意味着它没有添加我的记录,从那里我无法再添加记录。我后来删除了这个条件,但无济于事。每当我运行页面并将所有内容添加到文本字段时,就不再添加任何记录。

这是我的代码...

<html>
<body>


<?php 
$user_name = "root";
$password = "";
$database = "mydirectory"; // name of database
$server = "127.0.0.1";
$Sitetbl = "tbl_mydirectory";
//define the variables sent from the form
//if form has been posted, do this
if ($_SERVER["REQUEST_METHOD"] == "POST")
 {
  $genre = trim($_POST["genre"]);
  $site = trim($_POST["siteadd"]);
  $name = trim($_POST["nameadd"]);

//connecting to database
$db_handle = mysql_connect($server, $user_name, $password);

//creating a query to add site
$addSQLQuery = "INSERT INTO $Sitetbl (Genre,Site_Address, Site Title)
VALUES ('$genre','$site','$name')";

$result=mysql_query($addSQLQuery,$db_handle);
}  
?>



<!-- send page to itself using server variable -->
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<h2>Add Site</h2>
Genre:<input type="text" name="genre"></br>
Http://<input type="text" name="siteadd"><br>
Name:<input type="text" name="nameadd"></br>
<input type="submit" value="Add">
</form>

</body>
</html>

if 语句(不再出现在我的代码中)是这样的

if($result) 
{
echo "Website added successfully!";
}
else
{
echo "Error adding website. Please check fields.";
}

它位于我的程序的底部,就在 PHP 声明结束的上方。

最佳答案

您必须尝试这个修改后的代码。因为您错过了“mysql_select_db”行。

<?php 
$user_name = "root";
$password = "";
$database = "mydirectory"; // name of database
$server = "127.0.0.1";
$Sitetbl = "tbl_mydirectory";
//define the variables sent from the form
//if form has been posted, do this
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
 $genre = trim($_POST["genre"]);
 $site = trim($_POST["siteadd"]);
 $name = trim($_POST["nameadd"]);

 //connecting to database
 $db_handle = mysql_connect($server, $user_name, $password) or die('Host Connection Error');

 mysql_select_db($database,$db_handle) or die('DB Connection Error');

 //creating a query to add site
 $addSQLQuery = "INSERT INTO $Sitetbl (Genre,Site_Address, Site Title)
 VALUES ('$genre','$site','$name')";

 $result=mysql_query($addSQLQuery,$db_handle) or die('Query Error');
 }  
 ?>

 <!-- send page to itself using server variable -->
 <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
 <h2>Add Site</h2>
 Genre:<input type="text" name="genre"></br>
 Http://<input type="text" name="siteadd"><br>
 Name:<input type="text" name="nameadd"></br>
 <input type="submit" value="Add">
 </form>

 </body>
 </html>

关于php mysql 插入表工作一次,不再工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20715777/

相关文章:

java - JSTL sql标签的使用方法

MySQL 标准化与性能问题

php - MySQL:获取开始和结束时间之间 TIME ('xx:yy:zz' ) 的记录

php - XAMPP 错误 : www. example.com:443:0 服务器证书不包含与服务器名称匹配的 ID

java - 无法从 android 添加值到远程服务器

javascript - 当用户将鼠标悬停在 <ins> 标签内的文本上时,如何弹出工具提示?

javascript - 从文本区域中删除点标记

php - 错误 : Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR

php - 在命名空间中使用 Laravel 4 Encrypter

javascript - JQuery 数据属性在 Kohana ajax 中被剥离