jQuery.get () yöntemini kullanarak oturum variaible başarı mesajı dönmek nasıl

1 Cevap php

im kullanarak jQuery.get(), bir sayfadan bir tablodan satır silmek için main.php. şimdi ben başarı mesajı oturum değişkeni olması gerektiğini, satır sildikten sonra başarı mesajı göstermek istiyorum ($_session['suxesMsg'])

  1. nasıl ben belirli bir sürede bir oturum değişkeni ve gösteri başarı mesajı ayarlarım?

veya

  1. is there any other method in jQuery that a message appear fveya5-10 seconds only and then disappear?

İşte benim kod

main.php


 <?php  if($_SESSION['suxesMsg']!='') { ?>
   <span class="msg">
     <?php echo $_SESSION['suxesMsg'];unset($_SESSION['suxesMsg']);  } ?>
   </span>

  <table border="0" cellpadding="5" cellspacing="0" id="promotionTable">
   <tr>
      <td align="left"><img border='0' src='images/just.gif'/>First Promotion</td>
      <td align="center" >View Detail</td>
      <td align="center" id="deleteMe">
       <img src='images/delete.png' alt='Delete' width='14' height='14'id="45"/>
      </td>                
   </tr>
    <tr>
      <td align="left"><img border='0' src='images/just.gif'/>First Promotion</td>
      <td align="center" >View Detail</td>
      <td align="center" id="deleteMe">
       <img src='images/delete.png' alt='Delete' width='14' height='14' id="48"/>
      </td>                
   </tr>
   </table>



<script type="text/javascript">        
    jQuery(document).ready(function(){      
        jQuery('#deleteMe img').click( function() {   
            if(!confirm('Want to delete!')) return; 
        jQuery.get('deleteThis.php', {oid:this.id});
        jQuery(this).parent().parent().fadeTo(400, 0, function() {
           jQuery(this).remove();
        });
    });
   </script>

deleteThis.php


if(isset($_GET[oid]))
    {
        $offerID=$_GET[oid];    
        $delsql="DELETE FROM some_table WHERE promotion_id=".$offerID;  
        $db->query($delsql);        
        $_SESSION['suxesMsg'] = "Promotion deleted sucessfully.";
    }

Thanks fveyahelping me alwayz

1 Cevap

Ben oturumuna gitmek gerekir neden emin değilim. Kodu baktığımızda bu sayfası ilk oluşturulduğunda PHP yapılır çünkü, gerçek hata iletisi gösterilir önce sayfayı yenilemeniz gerekebilir anlamına gelir.

Eğer öğeyi silinen isteği doğrudan bir başarı mesajı dönün ve sonra javascript kullanarak hemen göstermek değil misiniz? Bir başarı bayrak ve geri gönderilen bir dize mesaj kodlamak için JSON kullanabilirsiniz. Bu gibi örnek bir şey için:

//make post request to delete item
$.post'deleteThis.php', {oid:this.id}, function(data) {
    if (data.success) {
       $('.msg').html('Success: ' + data.msg);
    } else {
       $('.msg').html('Failed: ' + data.msg);
    }
}, "json");

deleteThis.php

$success = false;
$msg = '';
if(isset($_POST['oid'])) { 
    //delete $_POST['oid'] here        
    $success = true; //if successfull
    $msg = 'Deleted ok';
} else {
    $msg = 'No ID sent';
}

//send json data back
echo json_encode( array('msg'=>$msg, 'success' => $success) );