Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
插入mysql/php的困难_Php_Mysql - Fatal编程技术网

插入mysql/php的困难

插入mysql/php的困难,php,mysql,Php,Mysql,我正在尝试创建一个拍卖网站,这样我就可以在mysql表中更新它,但它不会更新mysql表中的任何内容。我得到一个php错误日志,我得到的所有错误都来自 t-2012 17:02:46] PHP Notice: Undefined variable: auctionnum in /devel/cgreenheld/projects/Asgn2/auction.php on line 21 [04-Oct-2012 17:02:46] PHP Notice: Undefined variabl

我正在尝试创建一个拍卖网站,这样我就可以在mysql表中更新它,但它不会更新mysql表中的任何内容。我得到一个php错误日志,我得到的所有错误都来自

t-2012 17:02:46] PHP Notice:  Undefined variable: auctionnum in /devel/cgreenheld/projects/Asgn2/auction.php on line 21

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: reserve_met in /devel/cgreenheld/projects/Asgn2/auction.php on line 116

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: reserve in /devel/cgreenheld/projects/Asgn2/auction.php on line 123

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: highest_bid in /devel/cgreenheld/projects/Asgn2/auction.php on line 123

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: highest_bid in /devel/cgreenheld/projects/Asgn2/auction.php on line 123
[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: auctionnum in /devel/cgreenheld/projects/Asgn2/auction.php on line 124

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: title in /devel/cgreenheld/projects/Asgn2/auction.php on line 130

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: bio in /devel/cgreenheld/projects/Asgn2/auction.php on line 131

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: reserve_met in /devel/cgreenheld/projects/Asgn2/auction.php on line 133

[04-Oct-2012 17:02:46] PHP Notice:  Undefined variable: reserve in /devel/cgreenheld/projects/Asgn2/auction.php on line 134
我有相当多的代码,所以我将尝试将其缩小到我认为相关的部分。这都是非常基本的atm,但我只想让它能够将东西插入mysql表。 因此,这是他们输入的插入拍卖的表格(这很好)

我不确定到底哪里出了问题,我认为mysql_fetch_数组是一个问题,我通常不使用它。。但我很困惑到底出了什么问题。 我还没有对我的输入进行分类,但我知道它们。
谢谢。

您的数据库连接在哪里?($conn)我看不到它正在初始化。

另外,通过在文件顶部添加以下代码,确保启用“
显示错误”
”。通过这种方式,您可以正确地调试代码,然后对其进行注释或简单地将其删除

ini_set('display_errors', 1);
error_reporting(E_ALL);
作为您的编码风格的补充说明,我建议使用
EOF
而不是多个
echo

例: 你有:

echo "<h1 id=\"auctiontitle\">Auction Title: $title </h1>";
    echo "<p id=\auctionbio\">Auction Description: $bio</p>";
    echo "<div id=\"infobar\">";
echo“拍卖名称:$Title”;

echo“这是因为这些变量在使用之前没有定义。请使用aution.php文件顶部的
错误报告(0)
,或为变量指定空值,如

$auctionnum=$title=$bio=$category=$reserve=$reserve_met=$highest_bid="";
原因:

比如说,

 $temp="test";
 echo $temp;
在上面的代码中,
$temp
变量指定了一个值。因此它不会给您任何通知。但请查看以下代码:

echo $tt;
在这个代码中,
$tt
变量在使用之前没有定义/分配任何值。因此它将发出一个与您提到的类似的通知。当执行以下查询时,我们转到auction.php中的代码

$query = 'SELECT * FROM Auctions WHERE Auctionno = "'.$auctionnum.'";';
您将获得变量的值,如
$auctionnum
$title
$bio
$category

$reserve
$reserve\u met
$highest\u bid
。如果查询没有记录,那么它将被取消分配,您将看到php通知。

这是因为您在使用它们之前使用了未定义的变量。 请在“获取错误”使用的行上,而不是:

 $clean_title = $_POST['Title'];
 $clean_bio = $_POST['Bio'];
 ....
请使用

$clean_title = (isset($_POST['Title'])?$_POST['Title']:"");
$clean_bio = (isset($_POST['Bio'])?$_POST['Bio']:"");
....
它也可用于其他变量,例如: 而不是

$title
使用


您是否尝试读取错误消息?它指定了代码的错误。正如zerkms所说,读取错误消息。这些消息相当简单;它们甚至会给您行号。(whathaveyoutried.com)还必须指出的是,您的代码容易受到SQL注入的攻击。如果您不使用SQL语句或至少引用您的所有输入,您将在不久的将来受到攻击。是的,我已经阅读了错误消息。我不明白为什么在我初始化变量时它会给我错误消息。@courtney:如果php说是未初始化-然后您现在没有初始化,显示错误(在每个文件上)阅读加载页面上出现的第一个错误,并在此处跳过。我们服务器上的安全设置不允许我使用它。抱歉。我很抱歉知道,你应该能够打开和关闭php错误,我会说,99%的托管提供商。找一家像样的托管公司,这样你就可以高效地工作,并始终在在您的编码中,不这样做是很糟糕的。在PHP5.4之前,您应该使用E|u ALL | E|u STRICT
echo $tt;
$query = 'SELECT * FROM Auctions WHERE Auctionno = "'.$auctionnum.'";';
 $clean_title = $_POST['Title'];
 $clean_bio = $_POST['Bio'];
 ....
$clean_title = (isset($_POST['Title'])?$_POST['Title']:"");
$clean_bio = (isset($_POST['Bio'])?$_POST['Bio']:"");
....
$title
(isset($title)?$title:"")