v2.5.2
Giriş yap

ajax ile güncelleme işlemi yapamıyorum

resulgunaydin
491 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Mesajlar listem var. Bunları ajax ile aynı sayfada güncelleyip silmek istiyorum. 2 tane sorunum var.
Birincisi: li içindeki elemanları seçip değerlerini alamıyorum. Güncelleme olayını başka sayfaya yönlendirip orada oluşturduğum yeni bir tablo ile yapmak istemiyorum. Direkt o sayfa da listenin içinde olan inputa girilen yeni değerle yapmam gerekiyor. Yani listelenen mesajlarda mesaj textarea şeklinde geliyor. Buradan direkt değiştirip güncelle butonuna bastığım zaman güncellenmesi gerekiyor.
İkincisi: Yine aynı şekilde silme işleminde ajax ile listedeki butona tıklandığında ona özel id'sini alıp silme işlemini gerçekleştiremiyorum.

jquery ile kontrol ettirdiğim zaman bütün elemanların değerini alıyor. Tek tek alamıyorum. Yardımcı olur musunuz ? Biraz aciliyeti var gece 12de teslim etmem gerekiyor.


 <?php 
        $query = $db->query("SELECT * FROM tbl_message", PDO::FETCH_ASSOC);
        if ( $query->rowCount() ){
            foreach( $query as $row ){
    ?>
    <form action="" method="post" onsubmit="return false;">
        <tr>
            <td style="width:5%"><?php echo $row['id'] ?></td>
            <td style="width:20%"><?php echo $row['u_name'] ?></td>
            <td style="width:20%"><?php echo $row['u_surname'] ?></td>
            <td style="width:20%"><?php echo $row['u_phone'] ?></td>
            <td style="width:5%">
                <select name="u_konu" id="konu">
                    <option value="1" <?php if($row['u_sub'] == 1){echo 'selected';} ?> >Öneri</option>
                    <option value="2" <?php if($row['u_sub'] == 2){echo 'selected';} ?> >Talep</option>
                    <option value="3" <?php if($row['u_sub'] == 3){echo 'selected';} ?> >Şikayet</option>
                </select>
            </td>
            <td style="width:20%">
                <textarea name="u_mesaj" id="u_mesaj" cols="15" rows="2"><?php echo $row['u_message'] ?></textarea>
            </td>
            <td style="width:5%">
                <input type="submit" class="delete" value="" id="<?php echo $row['id'] ?>">
            </td>
            <td style="width:5%">
                <input type="submit" class="update" value="" id="<?php echo $row['id'] ?>">
            </td>
        </tr>
    </form>
    <?php
            }
        }else {
            
    ?>
house2k
1059 gün önce

Merhaba, sanırım siz tablo üzerinde istediğiniz veriyi değiştirip güncelle diyince o veri değişsin sil diyince silinsin istiyorsunuz. Sizin için böyle bir kod oluşturdum işinizi görücektir diye tahmin ediyorum.


 <?php 
$db = new PDO("mysql:host=localhost;dbname=test;charset=utf8", 'root');

        $query = $db->query("SELECT * FROM tbl_message", PDO::FETCH_ASSOC);
        if ( $query->rowCount() ){
            foreach( $query as $row ){
    ?>
    <form action="" method="post">
        <tr>
            <td style="width:5%"><?php echo $row['id'] ?></td>
            <td style="width:20%"><?php echo $row['u_name'] ?></td>
            <td style="width:20%"><?php echo $row['u_surname'] ?></td>
            <td style="width:20%"><?php echo $row['u_phone'] ?></td>
            <td style="width:5%">
                <select name="u_konu" id="konu">
                    <option value="1" <?php if($row['u_sub'] == 1){echo 'selected';} ?> >Öneri</option>
                    <option value="2" <?php if($row['u_sub'] == 2){echo 'selected';} ?> >Talep</option>
                    <option value="3" <?php if($row['u_sub'] == 3){echo 'selected';} ?> >Şikayet</option>
                </select>
            </td>
            <td style="width:20%">
                <textarea name="u_mesaj" id="u_mesaj" cols="15" rows="2"><?php echo $row['u_message'] ?></textarea>
            </td>
            <td style="width:5%">
                <input type="submit" class="delete" name="delete" value="<?php echo $row['id'] ?>" id="<?php echo $row['id'] ?>">
            </td>
            <td style="width:5%">
                <input type="submit" class="update" name="send" value="<?php echo $row['id'] ?>" id="<?php echo $row['id'] ?>">
            </td>
        </tr>
    </form>
    <?php
            }
        }else {
            }

    if ( isset($_POST['send']) ){
$güncelleme1 = $_POST['u_konu'];
$güncelleme2 =  $_POST['u_mesaj'];             
$güncellemeid = $_POST['send'];
$sorgu = $db->query("UPDATE tbl_message SET u_sub = '$güncelleme1', u_message = '$güncelleme2' WHERE id = '$güncellemeid'");    }
    else if ( isset($_POST['delete']) ){
$deleteid = $_POST['delete'];
$sorgu = $db->query("DELETE FROM tbl_message WHERE id = '$deleteid'");
    }

    ?>