私がこれまでに持っているのは(私が信じていることです)作業ループであり、反復して正しいID(var_dumpで確認)を取得していますが、SQLクエリはIDをDELETEキーとして取得していません。基本的に、SQL クエリは、id = 配列反復の現在の id 値の場所を削除しています。マルチチェックボックスを使用します。var dump は、ID がアップロード ID と一致することを確認していますが、削除を行うことはできません。コードは次のとおりです。
function submit_delete() {
if(!is_null($_POST['delete']) && !is_null($_POST['checkbox'])) { //Check to see if a delete command has been submitted.
//This will dump your checkbox array to your screen if the submit works.
//You can manually check to see if you're getting the correct array with values
// var_dump($_POST['checkbox']);//Comment this out once it's working.
$id_array = $_POST['checkbox'];
//var_dump($id_array);
deleteUploads($id_array);
}
else {
echo "Error: submit_delete called without valid checkbox delete.";//var_dump($_POST['checkbox']);
}
}
function deleteUploads ($id_array) {
if (count($id_array) <= 0) { echo "Error: No deletes in id_array!"; echo 'wtf'; }
//return; }//bail if its empty
require_once ('../mysqli_connect.php'); //Connect to the db
$delete_success = false; var_dump($delete_success);
foreach ($id_array as $id) { var_dump($id);
$remove = "DELETE FROM upload WHERE upload_id= $id";//AND `owner_id`=".$_SESSION['user_id'];
$result = mysqli_query ($dbc, $remove); // Run the query
//
////$mysqli->query($sql) or die(mysqli_error($mysqli));
if ($result) { $delete_success = true; var_dump($delete_success);}
mysqli_close($dbc);
}
if($delete_success == true) { echo 'done';
header('Location: newwriter_profile.php');
} else {
echo "Error: ".mysqli_error();
}
}
//Test deleteUploads (remove once you know the function is working)
//$test_ids = array();
//$test_ids[] = 5;//make sure this id is in the db
//$test_ids[] = 7;//this one too
submit_delete();
//deleteUploads($id_array);//should remove ids 10 and 9//
mysqli_close($dbc);