0

私のページには2つのフォームがあります。しかし、ワンアクションページ(approve.php)は動かないようです。承認または拒否された場合、特定の ID に対してフィールドをアクティブとして設定する必要があります。1つのアクションページでそれを行う方法はありますか?

または、以下で間違っていることがありますか?問題を引き起こしているかどうかわからなかったので、挿入スクリプトをブロックしました。最初に承認を行ったときは、以前は機能していました...

ページ:

<form method="get" action="approve.php">
            <input type="hidden" name="rows" value="<?php echo $row[0] ?>" />
            <p><a href='approve.php?id=<?php echo $row[0] ?>'><button url="#" class="btn btn-primary">Approve</button></a></p>
            </form>
            <form method="get" action="reject.php">
            <div id="reject-form-<?php echo $row[0] ?>" class="modal hide fade">
                        <div class="modal-header">
                            <a class="close" data-dismiss="modal">&times;</a>
                            <h3><?php _e('Reject Reason'); ?></h3>
                        </div>
                        <div class="modal-body">
                            <div id="message"></div>
                        <div class="controlgroup forgotcenter">
                                <div class="control">
                                    <input id="reject" name="reject" type="text"/>
                                </div>
                        </div>
                </div>
                <div class="modal-footer">
                    <input type="hidden" name="rw_id" value="<?php echo $row[0] ?>" />
                    <a href='reject.php?id=<?php echo $row[0] ?>'><button data-complete-text="<?php _e('Done'); ?>" class="btn btn-primary pull-right" id="forgotsubmit"><?php _e('Submit'); ?></button></a>
                    <p class="pull-left"><?php _e('Please give a short reason for rejecting.'); ?></p>
                    </div>
                </div>
            <p><a data-toggle="modal" href="#reject-form-<?php echo $row[0] ?>" id="rejectlink" tabindex=-1><button url="#" class="btn btn-primary">Reject</button></a></p>
            </form>

拒絶:

$id = $_GET['rw_id'];
    $reason = $_GET['reject'];


    $dbc = mysqli_connect('localhost', 'root', 'root', 'adjudication') or die('Connection error!');

    $update = "UPDATE login_fines_adjudicated SET reject_reason = '$reason' WHERE id ='$id'";
    mysqli_query($dbc, $update) or die('Database error!');

    $update1 = "UPDATE login_fines_adjudicated SET active = 1 WHERE id ='$id'";
    mysqli_query($dbc, $update1) or die('Database error, fine!');

    header('location:adjudication.php');

承認:

$id = $_GET['rows'];

    $dbc = mysqli_connect('localhost', 'root', 'root', 'adjudication') or die('Connection error!');

    $updated = "UPDATE login_fines_adjudicated SET active = 1 WHERE id = '$id'";
    mysqli_query($dbc, $updated) or die('Database error, active!');

    /**$insert = "INSERT INTO login_fines(`date`, `time_in`, `time_out`, `value`, `area`, `reason`, `licence`)"
    ." SELECT `date_issued`, `time_arrived`, `time_departed`, `value`, `location`, `violation_reason`, `licence`"
    ." FROM login_fines_adjudicated WHERE id = '$id'";
    mysqli_query($dbc, $insert) or die('Database error, fines!');**/

    header('location:adjudication.php');

どんな助けでも大歓迎です!

4

2 に答える 2

0

どのようなエラーが発生していますか? エラーを投稿していただけると助かります。フォームから取得した値をデバッグしましたか? あなたは何を手に入れますか?

1 つのスクリプトで拒否と承認を組み合わせて、渡された値に基づいて異なる動作をすることができます。取得するよりも投稿の方が優れていると思います。

<form method="post" action="approve.php">
 <input type="hidden" name="approve" value="<?php echo $row[0] ?>" />
  <p><a href='approve.php?id=<?php echo $row[0] ?>'><button url="#" class="btn btn-     primary">Approve</button></a></p>
</form>

<form method="post" action="reject.php">
 <div id="reject-form-<?php echo $row[0] ?>" class="modal hide fade"> 
 ....
<input type="hidden" name="reject" value="<?php echo $row[0] ?>" />

action.php で、

if(key_array_exists($_POST['approve'])) ...
if(key_array_exists($_POST['reject'])) ...
于 2013-07-30T13:54:16.223 に答える
0

次のようにコードを変更する必要があります。

<form method="get" action="approve.php?id=<?php echo $row[0] ?>">
    <p>
        <input type="submit" class="btn btn-primary" value="Approve" />
    </p>
</form>
于 2013-06-03T11:18:01.703 に答える