私はプロセスの従業員休暇記録のためにPHPアプリケーションを構築しています。このアプリケーションでは、メイン画面にデータベースレコードとアクションボタンが表示されます。ユーザーがアクションボタンをクリックすると、テーブルからデータベースIDを取得し、別のファイルを参照してレコードを削除し、同じページにリダイレクトします。このメカニズムは、HTML _GETメソッドを使用して実装されました。つまり誰でもURLフィードの行IDを見ることができ、誰かが別の行IDでこのURLを要求した場合、PHPファイルは他のセキュリティ対策が行われていないのでそのレコードを削除します。また、このアプリケーションはどんな種類のセッションも使用していません。投稿と同じPHPページでデータベースを削除する処理
これは上記のタスクのhrefコードです。どのように私は別のPHPにリダイレクトすることなく、同じPHPファイル内rejectoneタスクを実行することができます
echo "<a href='rejectone.php?id=$lvid' class='btn btn-danger btn-xs m-r-1em'>Cancal</a>";
、これは私は2つの質問
1を持っている私のrejectone.phpコード
<?php
$lid =$_GET['id'];
include 'database.php';
$accval = "Accept";
try {
$query = "UPDATE leavesrecords SET leavestatus = 'Reject' WHERE lvid = '$lid'";
$stmt = $con->prepare($query);
$stmt->bindParam(1, $id);
$stmt->execute();
}
catch(PDOException $exception){
die('ERROR: ' . $exception->getMessage());
}
header("refresh:0;url=bs.php");
?>
です)ファイル
2.)jejectone.phpファイルをまだ使用している場合、getメソッドの代わりにHTML _POSTメソッドを使用してデータを転送するにはどうすればよいですか
ありがとうございます!ただ、あなたのサイト上でのjQueryを含めていない場合は、あなたがあなたのページにこのスクリプトを追加することによってそれを行うことができます
echo '<a href="javascript:;" class="btn btn-danger btn-xs m-r-1em delete-item" primary-key="'.$lvid.'">Cancal</a>';
に
echo "<a href='rejectone.php?id=$lvid' class='btn btn-danger btn-xs m-r-1em'>Cancal</a>";
:
完全な回答ありがとうございます。何とかこれは動作していません。ボタンのWebページをクリックするとjavascriptの確認が表示されますが、行が更新されませんでした –
PDOの 'bindParam'が更新されました。 –
これを実行すると、FireFoxのコンソールウィンドウに「ReferenceError:t is not defined」というエラーが表示されます –