将设置值插入MySQL数据库不能正常工作

时间:2012-06-01 09:25:31

标签: php mysql

我试图将作品“Peach”插入到我的“树”表中,其中有以下字段:

ID(自动增量) owner_id tree_type(这是我想要“PEACH”添加的地方) tree_height tree_ammount 活跃

继承剧本

<?PHP

session_start();

include 'src/sql_handler.php'; 

include 'src/tree_handler.php';

if(isset($_POST['submitPeach'])) {

$array = array('tree' => $_POST['tree'],);

$handler = new Tree_Handler;

$handler->addPeach($array);

}

?>

<!DOCTYPE HTML>
<html>
<body>

<form method="post" action="<?php echo $PHP_SELF;?>">
<input type="image" src="images/tree/Choose Fruit/fruit1.jpg" name="submitPeach" />    
</form>

</body>
</html>

我的sql_handler很好,我知道这是因为它用于连接到MySQL DB,它可以很好地处理我的所有其他脚本。

这是tree_handler.php

function addPeach($array) {

    $SQL_CON = new MySQL_Con;

    $SQL_CON->MySQL_Con();

    $tree_type = 'Peach';

    $query = mysql_query("SELECT ID FROM users WHERE email='".mysql_real_escape_string($_SESSION['email'])."'") or die(mysql_error());

    $data = mysql_fetch_array($query);

    $query = mysql_query("INSERT INTO trees(owner_id, tree_type, active) VALUES ('".mysql_real_escape_string($data['ID'])."',[Peach],[0])") or die(mysql_error());

    if (!$query) 
$message  = 'Invalid query: ' . mysql_error();
echo "Added";
die($message);

    $SQL_CON->End_Con();

}

我的问题是,当我点击fruit1.jpg图片时,它就像它的加载一样,但什么都不做,在表中插入任何东西,也没有给我一个错误信息。我是否必须在插入表格时使用所有列,或者我只是选择owner_id,tree_type,活动列

MASS EDIT:

我想匹配用户的电子邮件,然后添加该用户的ID。 (我们在users表中有一个名为ID的列,即users表中的自动增量),该列被转移到trees table owner_id列。然后将单词Peach插入到tree_type列中,如果它现在是活动的,那么它现在将是0,因为它不活动,一旦用户点击该桃并且它附加了,那么仍然有那些tree_height和tree_ammount列被保留为NULL直到他们被带到下一个屏幕,他们有一个有趣的方式与他们选择树的高度进行交互,但这是另一个故事和不同的页面。我想我会告诉你完整的过程。

1 个答案:

答案 0 :(得分:0)

您的查询应该是

$query = mysql_query("INSERT INTO trees(owner_id, tree_type, active) VALUES
('".mysql_real_escape_string($data['ID'])."','Peach',0)") or die(mysql_error());