【问题标题】:intercept an sql query which is executed without push the right submit button correlated php拦截一个 sql 查询,该查询在没有按下正确的提交按钮的情况下执行相关的 php
【发布时间】:2012-10-16 20:23:22
【问题描述】:

如果用户允许出现在页面中,我有一个名为“验证”的提交类型按钮。 验证按钮将 db 中的一行设置为已验证 (TRUE)

我首先在 db 中检查验证字段是真还是假。

如果 false 和 isset($_POST['valid']) 我显示按钮

                        <input <?php echo $disabledvalid; ?> type="submit" class="sub" name="valid"  id="valid" value = "validate"   />

在我输入将验证字段从 FALSE 更改为 true 的 UPDATE 查询之后。

当页面被处理时 if 被忽略并被执行更新查询?

我该如何解决这个问题?

                <form action="view_support.php" method="post">
            <?php

            //check if validated field is true or false
            $queryvalid = "SELECT validated FROM support WHERE suppid = $suppid";
            $risqueryvalid = pg_query($queryvalid);
            $row = pg_fetch_array($risqueryvalid);
            $suppvalidated = $row['validated'];
            //echo "supp " . $suppvalidated;



            //$suppvalidated == "f";
            unset($_POST['valid']);
            //if validated field is false show me validate button
            if ( $suppvalidated == FALSE && (isset($_POST['valid'])  ){ 
                $suppvalidated = 'true';


                    <input <?php echo $disabledvalid; ?> type="submit" class="sub" name="valid"  id="valid" value = "validate"   />
                <?php

                if(isset($_POST['valid'])){
                    $vquery = "UPDATE support SET validated = $suppvalidated WHERE suppid = $suppid";
                    $risvquery = pg_query($vquery);
                    if (!$risvquery) {
                        #die("Error during insert support");    
                        die("Errore nella query $risvquery: " . pg_last_error());
                    }
                    unset($_POST['valid']);
                }

【问题讨论】:

  • 你想要达到的目标不清楚

标签: php button submit isset


【解决方案1】:

当你写这行代码时,你还处于 PHP 模式:

<input <?php echo $disabledvalid; ?> type="submit" class="sub" name="valid"  id="valid" value = "validate"   />

你的右括号在哪里:

if ( $suppvalidated == FALSE && (isset($_POST['valid'])  ){ 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-04
    • 2017-07-13
    • 2012-04-18
    • 2020-08-09
    相关资源
    最近更新 更多