프로세스 종업원 휴가 기록을 위해 PHP 응용 프로그램을 작성하고 있습니다. 이 응용 프로그램에서는 기본 화면에 데이터베이스 레코드와 작업 버튼이 채워집니다. 사용자가 작업 버튼을 클릭하면 데이터베이스 ID를 테이블에서 가져 와서 다른 파일로 이동하여 해당 레코드를 삭제 한 다음 다시 같은 페이지로 리디렉션합니다. 이 메커니즘은 HTML _GET 메서드를 사용하여 구현되었습니다. 누군가가 URL 피드의 행 ID를 볼 수 있고 누군가 다른 행 ID로이 URL을 요청하면 PHP 파일은 다른 보안 조치가 일어나지 않도록 레코드를 삭제하므로 해당 레코드를 방지 할 수 있습니다. 또한이 응용 프로그램은 어떤 종류의 세션도 사용하지 않습니다.게시자가 동일한 PHP 페이지에서 데이터베이스 삭제 조치를 처리합니다.
이것은 위에서 언급 한 작업에 대한 href 코드입니다.
echo "<a href='rejectone.php?id=$lvid' class='btn btn-danger btn-xs m-r-1em'>Cancal</a>";
이 내가 다른 PHP로 리디렉션하지 않고 동일한 PHP 파일 내부의 rejectone 작업을 실행할 수있는 방법은 두 가지 질문
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 메소드를 사용하여 데이터를 전송하는 방법
감사합니다. 모든
전체 답변 감사드립니다. 하지만 어떻게 든이 작동하지 않습니다. 버튼 웹 페이지를 클릭하면 자바 스크립트 확인이 표시되지만 행을 업데이트하지 않았습니다. –
PDO'bindParam'을 업데이트 했으므로 이제 작동합니다. –
내가 이것을 실행하면 "ReferenceError : t는 정의되지 않았습니다"라는 콘솔 창에서 발생합니다. –