반응형
성공적으로 실행하기 위해 동등한 mysqli 준비 문을 가져올 수 없습니까?
다음 코드 라인이 잘 작동하는 것 같습니다.
if(isset($_POST['result'])) {
if($_POST['result'] == 'true'){
$delete_post_query = mysqli_query($con, "UPDATE posts SET deleted='yes' WHERE id='$post_id'");
if($stmt = mysqli_prepare($con,$delete_post_query)){
}
}
}
그러나 아래에 준비된 등가물은 실행되지 않는 것 같습니다.
if(isset($_POST['result'])) {
if($_POST['result'] == 'true'){
$delete_post_query = mysqli_query($con, "UPDATE posts SET deleted='yes' WHERE id=?");
if($stmt = mysqli_prepare($con,$delete_post_query)){
mysqli_stmt_bind_param($stmt, "s",$post_id);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
}
}
}
저는 이것에 대해 상당히 혼란스럽고 제가 명백한 것을 놓치고 있다고 꽤 확신합니다.제안/해결 방법이 있습니까?
업데이트/편집:
제가 코드 복사/붙여넣기를 실수해서 제안대로 업데이트했습니다.
또한 바인딩 매개 변수를 각각 정수와 이중으로 시도했습니다.
이 문제는 바인딩 매개 변수와 관련이 있다고 생각합니다. 자리 표시자(즉, '?')를 하드 코드 변수 $post_id로 교체할 때 문제가 없습니다.
당신이 MySQLi를 사용하고 있기 때문에 당신은 당신의 코드에 다른 접근법을 취할 수 있고, 다음과 같은 것을 사용할 수 있습니다.
if(isset($_POST['result'])) {
if($_POST['result'] == 'true'){
$id = $_POST['post_id']; // make sure to define id
$delete_post_query = "UPDATE posts SET deleted='yes' WHERE id=? LIMIT 1"
if ($stmt = $mysqli->prepare($delete_post_query))
{
$stmt->bind_param("i",$id);
$stmt->execute();
$stmt->close();
}
}
}
입력할 매개 변수에 대한 참조를 전달하지 않았습니다.
$delete_post_query = mysqli_query($con, "UPDATE posts SET deleted='yes' WHERE id='$post_id'");
이 쿼리는 삭제하라고 말하고 사용자는 또한 다음을 제공했습니다.$post_id바로 아래에
mysqli_stmt_bind_param($stmt, "ss",$friend_array,$user_to_remove);
서버가 참조할 내용을 찾을 수 없는 바인딩 매개 변수가 있습니다.당신의 질문은 다음과 같아야 합니다.
$delete_post_query = mysqli_query($con, "UPDATE posts SET deleted='yes' WHERE id=?");
바인딩 매개 변수는 다음과 같아야 합니다.참조가 하나뿐이므로?하나의 매개 변수만 바인딩할 수 있습니다.또한.id이라int그 다음에 사용i한다면string그 다음에 사용s
mysqli_stmt_bind_param($stmt, "i",$user_to_remove);
//뉴웨이
$stmt = $con->prepare("UPDATE posts SET DELETED='yes' WHERE id=?");
$stmt->bind_param("i",$user_to_remove);
$stmt->execute();
언급URL : https://stackoverflow.com/questions/44809851/cant-get-an-equivalent-mysqli-prepared-statement-to-execute-sucessfully
반응형
'programing' 카테고리의 다른 글
| 파워셸에서 파이썬을 사용하려고 합니다. (0) | 2023.09.04 |
|---|---|
| Excel 창 열기로 인해 C#에서 Excel로 데이터 쓰기가 중단됨 (0) | 2023.09.04 |
| Apache POI를 사용하여 Excel에 파일 포함 (0) | 2023.08.30 |
| VBA를 사용한 Excel 유효성 검사 드롭다운 목록 (0) | 2023.08.30 |
| 배열을 C로 정렬하시겠습니까? (0) | 2023.08.30 |