Jquery kullanarak bir php denetleyici yöntemi çağırmak nasıl?

4 Cevap php

Ben bir web uygulaması geliştiriyorum ve ben Şimdi benim denetleyicisi işlevi jquery ile ajax arama için arayan ... içinde jquery entegre ediyorum ....

jquery.ajax() benim denetleyicisi yöntemi çağırmak için nasıl öyle düşünüyorum ... Ama yararlı olacaktır ....

$.ajax({
        type: "POST",
        url: "http://localhost/codeigniter_cup_myth_new/index.php/libraryController/loadbookdetails",
        data: "",
        contentType: "application/json; charset=utf-8",
        async: false,
        dataType: "json",
        success: function(jsonObj) {

function loadbookdetails()
{
    //Paging 
        $college=$_SESSION['college'];
        $this->load->library('pagination');
        $data['bookdetails'] = $this->librarymodel->selectbook($college);
        //$data['rackOptionData'] = $this->librarymodel->selectrack();
         if(empty($data['bookdetails']))
          {
             $data['comment'] = 'no record found!';
          }

        $this->load->view('bookdetials',$data);
}

I $data json ve kullanımı bunu jquery ile ve bir tablo ile yineleme jquery.ajax() fonksiyonu ve nasıl dönüştürmek için birlikte nasıl kullanılacağını burada bu kayıtları getiriliyor am ...

4 Cevap

Onlar aynı anda çalıştırmak değil çünkü doğrudan, PHP fonksiyonları için jQuery arayüzü değildir: PHP sunucu tarafında yürütülen (ve genellikle HTML sayfası üretir) olduğu, jQuery, istemci tarafında çalışır.

JQuery PHP sayfanın URL'sini bir Ajax çağrısı yapmak olurdu. Yani PHP sayfası denetleyicisi istenen ve istenen eylem (ler) gerçekleştirmek olacaktır.

Ki (eğer varsa) ne kullanıyorsanız PHP Çerçeve bağlıdır yapmak için önceden tanımlanmış bir yolu olup olmadığını.

PHP> = 5.2.0 için, json_encode () kullanabilirsiniz. Kodunuzu aşağıdaki gibi görünecektir:

$this->load->view('bookdetails', json_encode($data));

CodeIgniter + AJAX referansları iyi bir koleksiyonu bulunabilir here.

if you already have your view/bookdetials.php Then everything you need is (instead of your javscript code):

Bu gibi sayfada div bir yere ekle:

<div id="ajax-palaceholder"></div>

ve sonra bu javascript kodu ekleyin:

<script type="text/javascript">
$(document).ready({
  $('#ajax-palaceholder').load('http://localhost/codeigniter_cup_myth_new/index.php/libraryController/loadbookdetails');
});
</script>

Bu sayfa yük ajax isteği yapmak ve ardından div#ajax-palaceholder içine yüklenen içerik koyacağız

Ajax request have to contact with php script. That script have to return data. You are using json as response format:

dataType: "json",

Yani örneğin tek çıkış formu komut json olmak zorunda. Ve json başka bir şey olamaz.

Sizin serwer betik (bookdetials görünümü) gibi görünecektir:

  //Initialise data
  $bookdetails = ...
  // json encode data
  echo json_encode( $bookdetails );
  // make sure nothing else go to the output
  ???

?? - Sistemine bağlıdır. Genellikle burada pagelayout engellemek için var olacaktır.

yanıt olarak json güzel ama çoğu için HTML enought olduğunu ...