• 27-02-2013, 18:56:59
    #1
    Reveloper
    Merhaba,

    checkbox ile silme işlemi yapıyodum ama 1 where daha işleticem and işlemiyo alternatif ne var?

    <?php
    if( isset($_POST['sil'])) {
    $checkbox = mysql_real_escape_string(htmlentities(trim($_POST['checkbox'])));
    $will_be_deleted = join(", ", $checkbox);
    $query = mysql_query("DELETE FROM mesajlar WHERE id IN ($will_be_deleted)");
    echo ($query) ? '<div class="uyelikuyari">
    <p>
    <img src="images/warning.png" height="16" alt="Uyarı"/>
    Mesaj(lar) Silindi!
    </p></div>' : die(mysql_error());
    }
    ?>
  • 27-02-2013, 19:07:35
    #2
    Burti adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    checkbox ile silme işlemi yapıyodum ama 1 where daha işleticem and işlemiyo alternatif ne var?

    <?php
    if( isset($_POST['sil'])) {
    $checkbox = mysql_real_escape_string(htmlentities(trim($_POST['checkbox'])));
    $will_be_deleted = join(", ", $checkbox);
    $query = mysql_query("DELETE FROM mesajlar WHERE id IN ($will_be_deleted)");
    echo ($query) ? '<div class="uyelikuyari">
    <p>
    <img src="images/warning.png" height="16" alt="Uyarı"/>
    Mesaj(lar) Silindi!
    </p></div>' : die(mysql_error());
    }
    ?>
    foreach kullan ve <input type="checkbox" name="checkbox"> olani <input type="checkbox" name="checkbox[]"> yap ve sonra foreach($checkbox as $yenibox) islemleri devam yap
  • 27-02-2013, 19:09:20
    #3
    kingofseo adlı üyeden alıntı: mesajı görüntüle
    foreach kullan ve <input type="checkbox" name="checkbox"> olani <input type="checkbox" name="checkbox[]"> yap ve sonra foreach($checkbox as $yenibox) islemleri devam yapiniz
    Benim görüşüm her id için mysqle tekrar tekrar istek gönderilmemeli.Verileri parçalayıp sorguya uygun hale getirip tek sorguda işin halledilmesi
  • 27-02-2013, 23:43:42
    #4
    Reveloper
    kingofseo adlı üyeden alıntı: mesajı görüntüle
    foreach kullan ve <input type="checkbox" name="checkbox"> olani <input type="checkbox" name="checkbox[]"> yap ve sonra foreach($checkbox as $yenibox) islemleri devam yap
    foreach yerine bu sorguyu daha mantıklı bulmustum ama hocam? daha optimize değil mi sizcede?

    arasdizayn adlı üyeden alıntı: mesajı görüntüle
    Benim görüşüm her id için mysqle tekrar tekrar istek gönderilmemeli.Verileri parçalayıp sorguya uygun hale getirip tek sorguda işin halledilmesi
    aynen ama işte güvenlik önlemi için 1 tane daha where vermem lazım where userid çalıştırmam şart

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 23:43:42 -->-> Daha önceki mesaj 23:07:25 --

    neyse

    <?php 
    if( isset($_POST['sil'])) {
    $checkbox = mysql_real_escape_string(htmlentities(trim($_POST['checkbox']))); 
    foreach($checkbox as $id):
    $query = mysql_query("DELETE FROM mesajlar WHERE id='$id' alici='$user_id'"); 
    endforeach;
    echo ($query) ? '<div class="uyelikuyari"> 
    <p> 
    <img src="images/warning.png" height="16" alt="Uyarı"/> 
    Mesaj(lar) Silindi! 
    </p></div>' : die(mysql_error()); 
    }
    ?>
    böyle döndürdüm