需要一些帮助才能在数据库中提交一个值 - phpBB

时间:2010-10-15 17:35:34

标签: php html phpbb

好吧,伙计们,问这个问题很简单,但是我自己,我在找到答案时遇到了问题,而且我需要这个问题......

问题是:

我在(donate / index.php)

中有以下功能

函数submitted_amount() {     global $ db,$ user,$ auth,$ template,$ current_dir;     global $ config,$ phpbb_root_path,$ phpbb_admin_path,$ phpEx;

    include ($phpbb_root_path . 'includes/functions_user.' . $phpEx);
    include ($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
    include_once ($phpbb_root_path . 'donate/functions_donate.' . $phpEx);

    $submitted_amount = (isset($_POST['submitted_amount'])) ? true : false;

    $sql = 'UPDATE ' . DONATION_TABLE . "
            SET config_value = '" . $submitted_amount . "'
            WHERE config_name = 'submitted_amount'";

    $result = $db->sql_query($sql);

}

page_header($ user-> lang ['DONATE_EXPLAIN'],false);

submitted_amount();

$模板 - > set_filenames(阵列(     'body'=> '捐赠/ index_body.html') );

>

现在文件:(styles / prosilver / template / donate / index_body.html)

它有以下一行

<输入类型='文字'名称='submitted_amount'id ='submitted_amount'value =''size =“25”tabindex =“1”maxlength ='9'class ='inputbox_d'align =“top”>

< form action ='{U_DONATE_CONFIRM}'method ='post'>

<输入类型='提交'class =“button1”name ='submit'value ='{L_SUBMIT}'>

如果您需要更多说明,请告诉我。我向您展示了HTML和我的代码的PHP之间的所有可能的联系。数据库列在那里,那我的问题是什么?

1 个答案:

答案 0 :(得分:1)

首先关闭:

$submitted_amount = (isset($_POST['submitted_amount'])) ? true : false;

这不应该是submitted_amount的价值吗?它只会是truefalse

快速解决方法是将true更改为$_POST['submitted_amount'],但是除非您在其中的某处添加一些变量检查,否则您将完全放弃SQL注入。