我尝试向所有用户添加数据到数据库。但是,它没有工作,我没有收到错误。这纯粹是为了练习,但它仍然令人沮丧。想法?
<form name="Add" id="Add" method="post" action="programadd.php">
<p>Content Name:
<input name="program" type="text" id="program" style="width: 500px; height: 20px;" />
</p>
<p>Content Air Date
<input name="airdate" type="date" id="airdate" />
</p>
<p>Description
<input name="description" type="text" id="description" style="width: 500px; height: 20px;" />
</p>
<p>Production
<input name="production" type="text" id="production" value="nothing" style="width: 500px; height: 20px;" />
</p>
<p>Promotions
<input name="promotion" type="text" id="promotion" value="nothing" style="width: 500px; height: 20px;" />
</p>
<p>Community
<input name="community" type="text" id="community" value="nothing" style="width: 500px; height: 20px;" />
</p>
<p>Web
<input name="web" type="text" id="web" value="nothing" style="width: 500px; height: 20px;" />
</p>
<p>
<input type="submit" name="Submit" value="Submit" />
</p>
</form>
这是programadd页面。谢谢!
<?php
include('connect-db.php');
$program = $_POST['program'];
$airdate = $_POST['airdate'];
$description = $_POST['description'];
$production = $_POST['production'];
$promotion = $_POST['promotion'];
$community = $_POST['community'];
$web = $_POST['web'];
if (mysql_query ("INSERT INTO calendar(program, airdate, description, production, promotion, community, web) VALUES
('$program', '$airdate', '$description','$production', '$promotion', '$community', '$web')"))
{ echo "Content successfully added to the database. <br />
}
else {
die(mysql_error());
}
require_once("db_connx_close.php");
?>
答案 0 :(得分:0)
{ echo "Content successfully added to the database. <br />
^---missing " here
如果您没有从中获得语法错误,那么您可能会在display_errors和error_reporting关闭的情况下运行。 从不在您开发时禁用它们。它的编码相当于把你的手指塞进你的耳朵里去了#lalalala听不到你在乎你不得不告诉我lalala&#34;。
答案 1 :(得分:0)
这可能是你问题降价中的错误,但只是因为我不会提到我所看到的内容。
在查询后,您没有关闭echo上的字符串:
echo "Content successfully added to the database. <br />
应该是:
echo "Content successfully added to the database. <br />";
此外,为了清楚起见,您在SQL查询中直接使用$_POST
数据,而无需清理或验证数据。我意识到这是为了实践,但应该提到的是,这种方法极易受SQL Injection的影响,并且可以轻松访问您的数据库。相反,您可以使用PHP的PDO Library进行连接,或者至少使用sanitize your inputs。
答案 2 :(得分:0)
但是你的代码对于sql-injection很容易受到攻击,尽管你的帮助把这个改变放在你的查询语法中 -
if (mysql_query ("INSERT INTO calendar(program, airdate, description, production, promotion, community, web) VALUES ('".$program."', '".$airdate."', '".$description."','".$production."','".$promotion."', '".$community."', '".$web."')"))
{
echo "Content successfully added to the database. <br />";
}