2016-09-19 4 views
0

거부 ​​버튼을 클릭하면 데이터베이스에서 행을 삭제하려고합니다. 그러나 실제로는 아무 것도하지 않습니다.버튼을 사용하여 데이터베이스에서 행을 삭제하려고 시도했습니다.

삭제 쿼리의 PHP는 다음과 같습니다.

require_once('my_connect.php'); 

$requestid = $_GET["requestid"]; 
$delete_query = "Delete from loanrequests where requestid='$requestid'"; 

$delete_result = mysqli_query($connection, $delete_query); 

if ($delete_result) : 
     header ('location: requests.php?confirm=Loan request rejected'); 
    else: 
     echo "<b>Didnt work error</b>"; 
     echo mysqli_error($connection); 
endif; 

나는 테이블에서 다음 사용 때 일하고 :

$table.= "<td><a onClick =\"return confirm('Are You Sure You Want To Delete This User?')\" href=deleterequest.php?requestid=$requestid><img src=\"delete.png\">"; 

있지만 사용하여 내 버튼 클릭에 삭제 작업을 할 수 없습니다;

<input type="submit" name="rejectloan" value="Reject Loan" onClick="window.location.href='deleterequest.php'"> 

어디에서 잘못 되었습니까? 내 deleterequest.php 페이지가 올바르다는 것을 알고 있습니다. 그러나 그것을 사용하고 싶지는 않습니다.

+0

해당 테이블의 전체 코드를 표시하십시오. 여기서 form 태그가 사용됩니다. 뭔가 비린내가있어. –

답변

0

작동중인 메소드에서 다음과 같이 변수를 URL로 전달하고 있습니다 : deleterequest.php? requestid = $ requested. 작동하지 않는 방법에서 , 당신은되지 않습니다 window.location.href = 'deleterequest.php'

이 줄 : $ RequestID가 = $ _GET [ "RequestID가"]; URL에서 ID의 값을 가져옵니다. 이 값을 URL에 전달하지 않으므로 널 값 또는 선언되지 않은 값을 얻게 될 가능성이 큽니다.

id를 사용하여 특정 레코드를 삭제하고 있습니다. 두 번째 방법은 id를 포함하지 않습니다. 거의 확실하게 그것은 null 값이며, 이것은 데이터베이스에서 아무것도 삭제하지 않을 것입니다. 삭제할 레코드의 ID를 URL에 포함시켜야합니다. 그것은 문제를 해결할 것입니다.

+0

나는 그것이 어디에 문제가되는지 이해하고있다. PHP 태그 내부 URL에 변수를 전달해야합니까, 아니면 html 양식 내에서 그렇게 할 수 있습니까? – Mucca019

+0

window.location.href = 'deleterequest.php? requestid = '는 아마도 작동 할 것입니다. 필자는 PHP를 사용한 이후로 약간의 시간이 걸렸으므로 구문이 작동하지 않을 수 있습니다. 문제의 근본 원인은 URL에있는 ID의 누락입니다. 이제는 문제를 해결할 수있는 여러 가지 방법이 있습니다. 그 중 하나는 당신이 확인한 것입니다, 나는 이것을 여기에 게시하고 있습니다. – MarkBowman

+0

좋습니다. 시도해 보겠습니다. – Mucca019

관련 문제