Silme ve Düzenleme İşlemlerinde Kutusu Seçilileri Silme.
Merhabalar.İlginiz için şimdiden teşekkürler eksik olmayın.
Arkadaşlar phpmyadmin de görmüşsünüzdür checkbox kutularını.Bunları seçersiniz ve en altta ise seçilileri sil diye bir yer vardır.Seçiler kutuları nasıl silebilirim?
Ben id'yi o kutuya versem:
<input type=checkbox name=ad value=$id>
sonra hepsini sil ya da düzenle linkini de asıl gönderdiğim verisil.php ye yönlerdirsem.
verisil.php debu verilerle birden fazla id'ye göre verileri nasıl silebilirim?
delete from tablo where id=$id ama bir sürü $id olacak.
Gerçi hepsinin adı farklıda olmalı değil mi?Yoksa verileri hep aynı alırım...Lütfen yardım edin.
Bu arada deneyeceğim bunu ama mantığım doğru mu?
Php
tabloda ID numaraları farklı olması gerekiyor zaten. yoksa veritabanı çorbaya döner.
DELETE FROM tablo WHERE isim=Ali
belki 40 tane ali vardır. hepsi uçar.
Php
Mantık şu, veritabanından Form alanımız içinde şu şekilde bilgilerimizi çektik diyelim.
liste.php
...
...
echo "<form action=\"sil.php\" method=\"post\">";
$sorgu = mysql_query("select id,isim from tablom");
while ($veri=mysql_fetch_array($sorgu)){
$id = $veri["id"];
$isim = $veri["isim"];
echo "$isim <input type=\"checkbox\" name=\"id_liste[]\" value=\"$id\"><br>";
}
echo "<input type=\"submit\" value=\"Sil\"></form>";
...
...
?>
Burada önemli olan kodumuzun name ve value kısımları;
echo "$isim <input type=\"checkbox\" name=\"isim_id_liste[]\" value=\"$id\"><br>";
name kısmına dikkat ettiyseniz isim_id_liste'nin sonunda "[]" dizi parantezleri var ve name kısmını bu şekilde dizi olarak tuttuk. Burası seçim yaptığımız checkbox'ların value'da ki id'lerini sil.php'ye çoklu olarak aktarmak için. Tam olarak anlatamamış olabilirim. Bir örnek vereyim.
liste.php dosyamızda şöyle basit bir formumuz olsun.
<input type="checkbox" name="kutu[]" value="4">Ahmet<br>
<input type="checkbox" name="kutu[]" value="7"> Mehmet<br>
<input type="checkbox" name="kutu[]" value="9"> Ayşe<br>
<input type="submit" value="Sil">
</form>
Buradan silmek için çoklu seçim yapıp sil.php dosyamız gönderelim.
sil.php
$kutu = $_POST['kutu'];
foreach($kutu as $i){
//Silme işlemi burada
echo "Silmek istediğin ismin id'i $i<br>";
}
?>
sil.php dosyamızda dizimizi foreach ile sırayla işleme tabi tutuyoruz.
Umarım faydası olmuştur
Php
Çok sağolasın, anladım sayende. işte bende diyordumki bu veriyi karşıya gönderdik ama nasıl alacağız.
name=\"isim_id_liste[]\"
Evet kesinlikle bu.
$kutu = $_POST['kutu'];
foreach($kutu as $i){
//Silme işlemi burada
echo "Silmek istediğin ismin id'i $i<br>";
}
delete from tablom where numara='$i' yi de o döngüye koydum mu olur.
Valla ne diyim siz olmasanız hiç biR halt yapamazdım.
Php
Bu arada hepsini seçili yapmak için şöyle bir şey yaptım.
<a href=oku.php?c=checked>Hepsini seç</a>
<input type=checkbox ... $c > // ilede hepsini seçtim.
Acaba bunu yapmanın başka bir yolu mu var.
Php
Javascript'den çok anlamam ama şöyle bir örnek var.
<!--
function TumunuSec()
{
for (var i=0;i<document.form1.elements.length;i++)
{
var e=document.form1.elements[i];
if (e.name != 'Sec')
e.checked=document.form1.Sec.checked;
}
}
//-->
</SCRIPT>
//
<input type="checkbox" name="kutu[]" value="4">
<input type="checkbox" name="kutu[]" value="7">
<input type="checkbox" name="kutu[]" value="9"><br>
Tümünü Seç: <input type="checkbox" name="Sec" value="" onClick="TumunuSec();">
</form>