Gimana cara nya supaya file/gambar ikut terhapus sesuai id menggunakan checkbox(all checkbox)

master nanya ni kenapa file/gambarnya tidak dihapus sesuai permintaan contoh ada 4 item ketika dihapus menggunakan all checkbox file/gambarnya yg di foldernya hanya satu terhapus klo datanya normal bisa terhapus semua di data base

<!-- form.php-->

 <?php
echo '<div class="panel-body">';
      $result1 = mysql_query("SELECT * from data_barang");

      echo '<br> ';
echo '<form name="form" action="hapus_barang" method="post" onsubmit="return deleteConfirm();"/>';
echo '<div class="table_container">';
echo '<table class="table datatable">';
      echo '<thead>';
      echo '<tr>';
      echo '<th><input type="checkbox" name="select_all" id="select_all" value=""/></th>';
      echo '<th width="7%">No.</th>';
      echo '<th width="10%">ITEM CODE</th>';
      echo ' <th width="38%">DESCRIPTION</th>';
      echo '<th width="10%">MODEL</th> ';
      echo '<th width="10%">CATEGORY</th> ';
      echo '<th width="5%">QTY</th> ';
      echo '<th width="5%">UNIT</th> ';
      echo '<th width="8%">LOCATION</th> ';
      echo '<th width="7%">ACTION</th> ';
      echo '</tr>';
      echo '</thead>';

             echo '<tbody>';
      while($row = mysql_fetch_array($result1)){
             echo '<tr>';
             echo "<td><input type='checkbox' name='checked_id[]' class='checkbox' value='".$row['id']."'/></td>";

             $foto = ''.$row["foto"].'';
             echo "<td >" . $row["id"] . "</td>";
             echo "<td>" . $row["new_code"] . "</td>";
             echo "<td>" . $row["description"] . "</td>";
	     echo "<td>" . $row["model"] . "</td>";
	     echo "<td>" . $row["category"] ."</td>";
	     echo "<td>" . $row["qty"] ."</td>";
	     echo "<td>" . $row["unit"] ."</td>";
	     echo "<td>" . $row["location"] ."</td>";
            echo'<input type="hidden"  name="foto" value="'.$foto.'">';
             echo "<td>

<a href='#myModal'id='custId' data-toggle='modal' data-id=".$row['id']."><span class='btn btn-success' data-toggle='tooltip' data-placement='top' title='detail item'>Detail</span></a>
                  </td>";
                  echo'</tr>';
                  }
                 echo'</tbody>';
                 echo'</table>';
echo'<input type="submit" class="btn btn-danger" name="delete_submit" value="Hapus"/>';
		 echo'</form>';
		 echo'</div>';
                 echo'</div>';
                 echo'</div>';
                 ?>

<!-- ni file prosess php-->
<!-- proses.php-->

 <?php

     <?php
     require_once"kon.php";


     if(isset($_POST['delete_submit'])){

        $idArr = $_POST['checked_id'];
		$foto_lama = $_POST['foto'];

		$files = glob('../images/*'.$foto_lama);
		foreach($files as $file){
			if(is_file($file))
			unlink ($file);
		}


        foreach($idArr as $id){
         mysqli_query($conn,"DELETE FROM data_barang WHERE id=".$id);

		}
echo '<script>';
echo "alert('Removed');";
echo'window.location.href="barang";';
echo "</script>";
    }

    ?>

avatar maulanamahdi
@maulanamahdi

109 Kontribusi 0 Poin

Diperbarui 4 tahun yang lalu

Tanggapan

maskudnya "datanya normal" apa? coba debug pelan-pelan, liaht isi $idArr kamu apakah memang isinya sudah beberapa array atau cuma baru satu

maksud dari "data normal" adalah data yg ada di data base dihapus sesuai permintaan misal ada 3 item yang akan dihapus menggunakan check all ketika di klick data yg ada didata base terhapus semua hanya yg bermasalah gambar yg di folder tidak terhapus semua hanya satu terhapuss..menurut saya $idArr nya lebih dari satu soal nya bisa menghapus beberapa id/item di data base

bukan menurut kamu gan, sekarang kamu debug(cari kesalahan programnya) dengan melihat is $idArr, apakah sudah sesuai ekspektasi atau belum , bisa gunakan var_dump atau die https://sekolahkoding.com/forum/cara-menampilkan-error-debug-di-php-1552899672

form data nya dah ta perbaiki error nya juga dah hilang tapi masih tetep gan gambarnya tidak terhapus sesuai permintaan

saya tidak tahu apa yang kamu rapikan, pertanyaan saya isi $idArr sudah sesuai yang kamu mau atau belum? kalau belum kemungkinan salahnya mulai dari situ, pengambilan nilai checkboxnya

$idarr sudah sesuai. yg belum sesusai $foto_lama karna ketika klick hapus sistem membawa dua isi data field. satu $idarr dan $foto_lama, $idarr sebagai id checkbox..pertanyaan saya bagaimana cara supaya $foto_lama bisa membawa isi data field lebih dari satu seperti $idarr. maaf klo bahasa saya kurang di mengerti karna saya baru belajar tentang programer.

1 Jawaban:

Dari hasil "komentar" $foto_lama datanya tidak berisi array/banyak field berarti coba ganti input fieldnya menjadi array dengan menambahkan [] di nama arraynya&lt;input <pre> &lt;input type="hidden" name="foto[]" value="'.$foto.'"&gt; </pre>

avatar hilmanski
@hilmanski

2670 Kontribusi 2132 Poin

Dipost 4 tahun yang lalu

Login untuk ikut Jawaban