Tolong pilih kategori sesuai, jenis posting (diskusi atau bukan) dan sertakan tag/topik yang sesuai seperti komputer, java, php, mysql, dll. Promosi atau posting tidak pada tempatnya akan kami hapus!
- Bagi Anda yang ingin mendaftar, baca link berikut:
http://diskusiweb.com/discussion/50491/how-to-registrasi-diskusiweb-com-baca-ini-terlebih-dahulu
- Cara menyisipkan kode program supaya tampil rapi dan terformat dengan baik di diskusiweb.com: http://www.diskusiweb.com/discussion/50415/cara-menyisipkan-kode-program-di-diskusiweb-com
- Cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

search field ada yg bisa ditampilkan, ada yg tidak

controller : http://pastebin.com/GdpXjvm8
view : http://pastebin.com/YYvTmWgL

tabel tabel_jadwal -> field nama_produk -> isi field -> nama produk 1, nama produk 2, nama produk 3, nama produk 4, nama produk 5

klo aku cari kata dengan kata kunci : nama produk 1, bisa ditampilkan
klo aku cari kata dengan kata kunci : nama produk 2, tidak bisa ditampilkan (http://postimg.org/image/azcovqbc5/)
jadi ada field yg bisa ditampilkan dan ada yg tidak bisa ditampilkan

padahal klo aku die() dan aku jalankan di db gui, semua hasil nya bisa ditampilkan

klo dari analisa aku sih di view, setelah "sAjaxSource": '<?php echo site_url(); ?>cari/ambil_data',   yg bermasalah
cman belum nemu solusinya


mohon pencerahannya :D
Tagged:
«1

Comments

  • apa nya yg di die() ?

    waktu bermasalah, respon json nya apa ?
  • edited July 2015
    die($this->ci->db->last_query()); (ini di datatables)

    di private function get_total_results($filtering = FALSE)
    sebelum return $query->num_rows();

    lalu aku akses http://localhost/.../cari/ambil_data

    nanti kan keluar query nya
    query nya aku copas ke db gui dan testing
    ternyata di db gui jalan

    di respon json nya gak ada masalah
    data2 nya bisa ditampilkan
  • gw kagak nanya json masalah atau kagak

    yg gw tanya : waktu bermasalah, respon nya json apa ?
  • edited July 2015
    waktu bermasalah (http://postimg.org/image/azcovqbc5/), respon json seperti hasil pencarian lainnya yg berhasil. gak ada error

    respon json nya seperti ini :
    http://pastebin.com/MLa4Mbfp
  • json yg elo tunjukin itu json waktu bermasalah atau tidak ?
  • edited July 2015
    iya

    klo aku perhatikan isi json yg berhasil dan yg bermasalah ternyata berbeda :D

    klo yg berhasil : http://pastebin.com/MLa4Mbfp
    klo yg bermasalah : http://pastebin.com/DmtQt79Q

    yg bermasalah, di field nama_pemimpin ada spasi
    kayaknya itu yg bermasalah
    aku udah testing semuanya, isi field di json yg ada spasi nya gak bisa tampil (ada tulisan loading)

    itu gimana ya master?
    biar spasinya gak ada



    :-?
  • edited July 2015
    bener itu elo copy paste apa adanya dari json yg di dapat ?

    kalo copas, copas apa adanya
    kalo hasil json 1 baris, ya copas jadi 1 baris
    kalo bbrp baris, ya copas tetap jadi bbrp baris

    bukan spasi yg bikin masalah, spasi kagak pernah bikin masalah selama diapit quote yg bener

    dari awal yg gw curigai : ada baris baru di data elo
    baris baru pasti bikin masalah di js kalo ada di dalam string

    kalo di lihat di browser, baris baru kagak bakal keliatan
    tapi kalo lewat view source, baru keliatan
  • edited July 2015
    maksudnya <br />?

    klo <br /> memang ada
    tapi di dalam tag html, bukan di js
  • <br> mana mungkin kagak keliatan di browser :))

    <br> mah keliatan di browser dan view source nya
  • ini maksudnya baris baru apa?
  • lha kalo menurut elo yg nama nya baris baru itu kaya apa ?
    masa baris baru kagak tau ?
  • edited July 2015
    baris baru nya di dalam js ?
    wujudnya kaya apa ?
    aku bandingkan kodingan js yg di view page source dengan yg di sublime, sama

    gak ada baris baru
    baris baru yg ada cman <br />
  • edited July 2015
    grrrrr ...

    <script>
    var a =
    [{"test":"1. abc def<br>"}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test":
    "2. abc def<br>"}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test"
    :"3. abc def<br>"}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test":"
    4. abc def<br>"}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test":"5. abc
    def<br>"}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test":"6. abc def<br>
    "}]
    document.write(a[0]["test"]);
    </script>

    <script>
    var a =
    [{"test":"        7.      abc      def                   <br>             "}]
    document.write(a[0]["test"]);
    </script>

    yg jalan yg mana ?
    yg kagak jalan yg mana ?

    kenapa kagak jalan ?

  • edited July 2015
    aku udah paham master
    double quotes pembuka dan penutup harus 1 baris
    di kodingan js aku, udah sesuai

    aku yakin banget masalah nya di sini :
    sukses : http://postimg.org/image/91nnu1tfz/
    gagal : http://postimg.org/image/gsapl3s3r/

    ini aku udah testing
    yg ada spasi nya gagal semua
  • edited July 2015
    gw kagak bisa memeriksa apa pun dari gambar

    "... di kodingan js aku, udah sesuai ..."
    baris baru nungul bukan dari js elo
    tapi ada di data elo di db

    kalo data elo ada baris barunya,
    json bakal ada baris barunya juga,
    otomatis js juga bakal nerima data dgn baris baru juga

    spasi kagak bakal bikin masalah, no. 7 jalan atau kagak ?



    elo search dulu data yg gagal
    kalo sudah, jangan ditutup atau pindah halaman

    lalu edit controller nya
    tambah die() setelah
    echo $this->datatables->generate('json', '');

    lalu buka tab baru, langsung buka : cari/ambil_data

    ada json yg nungul ?
    coba di view source, json nya kaya apa ?
    posting apa adanya kemari
  • edited July 2015
    ada,
    http://pastebin.com/2rQLVe6g


    btw,
    baris baru nungul bukan dari js elo
    tapi ada di data elo di db
    cara tau klo data yg bermasalah di db ada baris barunya gimana?
    aku lihat data itu di db gak ada baris barunya :-?
  • edited July 2015
    itu kan 2 baris maaasssss ...
    di pastebin aja dikasih nomer baris, jadi 2

    [1] {"draw":0,"recordsTotal":1,"recordsFiltered":1,"data":[{"id":"12","product_name":"patayya","package_name":"Pataya Holiday","tour_leader_name":"

    [2]
                                       Visa Test                              ","action":"<a href=\"http:\/\/localhost\/APP\/schedule\/view\/12\" class=\"btn btn-primary btn-xs\"><i class=\"fa fa-edit\"><\/i>&nbsp;Detail<\/a>"}]}


    "
                                      Visa Test                              "

    ini persis yg no. 4
    setelah quote awal langsung ada baris baru
    error juga hasilnya

    baris baru elo ada di data string "Visa Test", di awal string

    emang cara elo liat data nya bagaimana ?
    lha wong itu nyatanya di awal ada baris baru nya
  • :D

    cara ngilangin baris barunya gimana master? :-?
  • edited July 2015
    tergantung ...

    baris baru nya di pake / berarti atau kagak
    spasi nya di pake / berarti atau kagak

    ada data yg baris baru dan spasi emang kagak boleh dihilangkan => replace
    ada data yg baris baru dan spasi nya boleh dihilangkan => trim

    yg replace elo sudah pernah dikasih tau urusan \r\n
    yg trim, elo trim saja langsung di query select nya



    tapi trim cuma berpengaruh buat baris baru dan spasi di awal dan akhir string
    kagak bakal menghilangkan yg di tengah string

    kalo data elo sampai bisa ada baris baru nya
    berarti input elo emang memungkinkan bisa di entri dgn data yg mengandung baris baru
    dan itu artinya baris baru kemungkinan bukan cuma ada di awal / akhir, tapi bisa ada di tengah string
    (no. 5 baris baru di tengah string, sama saja bikin error)

    replace tetep harus elo pake
    replace baris baru jadi "\r\n"

    <script>
    var a =
    [{"test":"5. abc\r\ndef<br>"}]
    document.write(a[0]["test"]);
    </script>
  • edited July 2015
    baris baru dan spasi gak di pke

    Visa Test  itu full name
    Visa : first name
    Test : last name

    first name & last name, itu textfield
    gak mungkin spasi atau baris baru

    koq bisa y ada baris baru? :-?

    btw, itu gak bisa di lihat di db klo ada baris baru atau enggak
    atau bisa langsung di hilangin baris barunya di db

    klo aku edit first name dan last name, apa baris barunya bisa hilang?



    :-?
  • Visa Test  itu full name
    Visa : first name
    Test : last name

    first name & last name, itu textfield
    gak mungkin spasi atau baris baru
    elo itu antara koding yg di posting
    dan yg di omong kok kagak konsisten ...

    ini di controller elo :

    $this->datatables->select('id, nama_produk, nama_paket, nama_pemimpin')
    ->from('tabel_jadwal')
    ->where('(nama_produk iLIKE \'%'.$cari.'%\' OR nama_paket iLIKE \'%'.$cari.'%\' OR nama_pemimpin iLIKE \'%'.$cari.'%\')', NULL, FALSE);

    itu 1 field, bukan gabungan 2 field
  • edited July 2015
    itu fk dari table yg lain

    jadi di tabel_jadwal  ada field nama_pemimpin dan id_nama_pemimpin
    id_nama_pemimpin itu fk dari tabel yg lainnya
    misal tabel itu, tabel pemimpin
    di tabel pemimpin ini ada, field first name, last name, full name dst
    yg diambil dari tabel jadwal, full name dari tabel pemimpin
  • edited July 2015
    kagak ngurus table yg lain

    koding controller yg elo posting itu cuma pake 1 table
    yg di select juga field dari table yg sama
    dan yg bermasalah itu cuma merujuk ke 1 field

    kagak ada sangkut paut nya dgn field lain di table yg lain



    kalo elo ngomong table lain, ngomong fk, dsb

    elo liat koding elo yg gw copas apa ada nya dari posting koding controller elo
    tunjukin ke gw, mana JOIN nya ?
  • edited July 2015
    ya maksud aku nama_pemimpin itu diinput(diketik) dari tabel lain
    di tabel jadwal, nama_pemimpin diinput dengan combo box
    baris baru nya di pake / berarti atau kagak
    spasi nya di pake / berarti atau kagak

    ada data yg baris baru dan spasi emang kagak boleh dihilangkan => replace
    ada data yg baris baru dan spasi nya boleh dihilangkan => trim

    karena itu makanya aku bahas tabel lain
    soalnya itukan sebenarnya asalnya bukan dari tabel jadwal
  • edited July 2015
    kalo elo mau beresin dari sumber input nya
    mana koding :
    - form
    - script yg menerima submit form
    - insert
    ke "tabel_jadwal" nya ?
  • o ini bisa diberesin tanpa dari sumber input nya
    klo gitu yg ini aja :D


    aku pahami dulu
  • edited July 2015
    klo dari bentuk data aku, aku mutusin untuk pke trim aja

    aku coba :

    $this->datatables->select('id, nama_produk, nama_paket, TRIM(nama_pemimpin) AS nama_pemimpin')
    ->from('tabel_jadwal')
    ->where('(nama_produk
    iLIKE \'%'.$cari.'%\' OR nama_paket iLIKE \'%'.$cari.'%\' OR
    nama_pemimpin iLIKE \'%'.$cari.'%\')', NULL, FALSE);

    hasilnya sama aja
  • edited July 2015
    sama dari hongkong ?
    trim kagak bakal bisa menyelesaikan masalah no. 5

    elo sudah gw ingetin ...

    baris baru itu kemungkinannya bukan cuma di awal atau di akhir
    kalo baris baru bisa nungul di awal / di akhir ...
    baris baru nungul di tengah (no. 5) juga bisa kejadian
    dan itu sama-sama bikin error di js

    elo dari kapan hari juga sudah gw kasih tau :
    replace baris baru jadi "\r\n", karena elo mainan dgn js
    js pasti bermasalah dgn baris baru yg ada di dalam string



    dari yg bermasalah :

    <script>
    var a =
    [{"test":"5. abc
    def<br>"}]
    document.write(a[0]["test"]);
    </script>

    di replace jadi tanpa masalah :

    <script>
    var a =
    [{"test":"5. abc\r\ndef<br>"}]
    document.write(a[0]["test"]);
    </script>


    trim cuma bisa membersihkan baris baru dan spasi jika posisi nya di awal / akhir string
    trim kagak bakal bisa menyelesaikan masalah no. 5
  • edited July 2015
    aku lihat isi json sebelum dan sesudah pke trim, sama
    masih ada baris barunya

    aku pke trim karena berdasarkan bentuk data yg aku punya
    dari bentuk data yg aku punya, gak mungkin ada baris baru ditengah
    masalah aku kan, baris baru nya di awal
  • edited July 2015
    hadoh ...

    "... gak mungkin ada baris baru ditengah ..."

    kalo gitu gw nanya :
    kok bisa ada baris baru nungul di awal data elo ?
    asalnya dari mana ?

    apalagi elo bilang :
    "...
    Visa Test  itu full name
    Visa : first name
    Test : last name

    first name & last name, itu textfield
    gak mungkin spasi atau baris baru
    ..."

    nama_pemimpin asalnya gabungan 2 field
    kalo bisa nungul baris baru di awal
    bisa gak kejadian baris baru ada di akhir "first name" ? atau di awal "last name" ?

    dan kalo ada baris baru di akhir "first name", kalo digabung dgn "last name"
    kira-kira baris baru jadi muncul dimana ?

    elo bilang : "... gak mungkin spasi atau baris baru ..."
    faktanya : ADA

    kalo elo sendiri kagak bisa memastikan baris baru bisa nungul darimana
    sama saja gw akan bilang :
    elo juga kagak bakal bisa memastikan baris baru tidak bakal nungul di tengah string
  • edited July 2015
    ya udah, aku ngikut aja :D

    aku coba :

    di datatables, aku tambahin fungsi

    public function select2($columns, $backtick_protect = TRUE)
    {
      foreach($this->explode(', ', $columns) as $val)
      {
        $column = trim(preg_replace('/(.*)\s+as\s+(\w*)/i', '$2', $val));
        $column = preg_replace('/.*\.(.*)/i', '$1', $column); // get name after `.`
        $this->columns[] =  $column;
        $this->select[$column] =  trim(preg_replace('/(.*)\s+as\s+(\w*)/i', '$1', $val));
      }
      $this->ci->db->select($columns, $backtick_protect);
      return $this;
    }

    lalu di controllernya :

    $this->datatables->select2('id, nama_produk, nama_paket, REPLACE(REPLACE(nama_pemimpin,E\'\n\',\'\n\'),E\'\r\',\'\') as nama_pemimpin')
    ->from('tabel_jadwal')
    ->where('(nama_produk
    iLIKE \'%'.$cari.'%\' OR nama_paket iLIKE \'%'.$cari.'%\' OR
    nama_pemimpin iLIKE \'%'.$cari.'%\')', NULL, FALSE);


    masih gagal :-?
  • elo inget kagak gw bilang apa ?

    select nya datatables elo bermasalah dgn fungsi SQL yg pake multi-parameter

    dan gw sudah bilang dari dulu : modif librari datatables elo
    dan elo emang sudah pernah bikin modifikasi nya

    kenapa kagak dipake ?
  • edited July 2015
    aku udah update di atas

    sama aja


    klo aku die() dan aku jalankan query nya  di db gui :
    ERROR:  syntax error at or near "as"
  • ulangi langkah yg ini
    elo search dulu data yg gagal
    kalo sudah, jangan ditutup atau pindah halaman

    lalu edit controller nya
    tambah die() setelah
    echo $this->datatables->generate('json', '');

    lalu buka tab baru, langsung buka : cari/ambil_data

    ada json yg nungul ?
    coba di view source, json nya kaya apa ?
    posting apa adanya kemari
  • klo aku die() dan aku jalankan query nya  di db gui :
    ERROR:  syntax error at or near "as"
    query string yg tercetak / dieksekusi posting kemari
    pesan error posting yg lengkap
  • edited July 2015
    gak ada json yg nungul, cman error aja

    Fatal error: Call to a member function result_array() on boolean in C:\xampp\htdocs\APP\application\libraries\Datatables.php on line 336
    query string yg tercetak / dieksekusi posting kemari
    pesan error posting yg lengkap
    die($this->ci->db->last_query()); di dalam  private function produce_output($output, $charset)
    sesudah $rResult = $this->get_display_result();

    biar select field nya juga tampil


    hasil query dan error saat di jalankan di db gui :
    http://pastebin.com/RHVigNTG
  • kebiasaan ... masalah kelakuan ci kalo opsi backtick kagak di off

    $this->datatables->select2('id, nama_produk, nama_paket, REPLACE(REPLACE(nama_pemimpin,E\'\n\',\'\n\'),E\'\r\',\'\') as nama_pemimpin' , FALSE)
  • sama aja

    klo hasil query nya aku jalankan di db gui : http://postimg.org/image/h112i2e29/
  • sama saja ini apa nya ?

    yg elo coba di db gui itu artinya query sudah bener
    tinggal memeriksa json nya jadi kaya apa



    ulangi langkah yg ini
    elo search dulu data yg gagal
    kalo sudah, jangan ditutup atau pindah halaman

    lalu edit controller nya
    tambah die() setelah
    echo $this->datatables->generate('json', '');

    lalu buka tab baru, langsung buka : cari/ambil_data

    ada json yg nungul ?
    coba di view source, json nya kaya apa ?
    posting apa adanya kemari
  • edited July 2015
    oiya, udah 1 baris
    http://pastebin.com/4LrTytvG

    hasil query nya : http://postimg.org/image/ecemlpulh/


    tapi masih gagal akses
    masih ada tulisan loading
  • data elo ini :

    "data": [
      {
        "id": "12",
        "product_name": "patayya",
        "package_name": "Pataya Holiday",
        "tour_leader_name": "\\n                                  Visa Test                              ",
        "action": "<a href=\"http://localhost/TMS/schedule/view/12\" class=\"btn btn-primary btn-xs\"><i class=\"fa fa-edit\"></i>&nbsp;Detail</a>"
      }
    ]

    ajax elo masih yg di posting awal ?

    "columns": [
      {
        "data": "nama_produk",
        "width": "100px"
      },
      {
        "data": "nama_paket",
        "width": "100px"
      },
      {
        "data": "nama_pemimpin",
        "width": "100px"
      },
      {
        "data": "action", "sClass": "text-center",
        "width": "100px"
      },
    ],

    nyambung atau kagak ?
  • edited July 2015
    sebenarnya data asli aku yg bahasa inggris
    cman yg aku tulis di sini bahasa indonesia

    tapi, masalah nya bukan di situ
  • edited July 2015
    mana gw tau mas
    karena yg gw liat adalah yg elo posting
    gw kagak mungkin ngarang atau main dukun biar tau koding elo sebenernya kaya apa

    elo posting hasil json kaya begitu
    sementara ajax elo kaya begitu

    jelas kagak bakal nyambung

    json kirim data pake mana kolom "product_name"
    tapi ajax mau ambil data "nama_produk"

    makanya kalo posting yg bener sesuai masalah
    jadi yg baca juga kagak salah ngeliat masalah



    kalo kondisi nya kaya di atas
    tetep aja gw bakal bilang : json dan ajax elo kagak nyambung
  • edited July 2015
    sorry master ^:)^

    anggap aja sama
    itu cman beda nama field nya aja :D
  • edited July 2015
    koding itu kagak ada kalimat "anggap aja sama"

    salah tulis 1 huruf
    salah tanda baca
    tetep aja jadinya ERROR

    lalu dari mana gw bisa tau letak masalahnya kalo kagak liat koding yg bermasalah ?



    tapi minimal, sampai output json nya, sudah bener
    masalah ada di koding js elo
  • saat search yg bermasalah, di web console ada pesan error apa ?
  • edited July 2015
    solved master :D

    ada kesalahan kecil :D

    makasih banyak master :-bd
  • edited July 2015
    ternyata masih ada bugs

    tag \n juga di tampilkan di field yg bermasalah
    misal nama field nya Visa Test
    bakal jadi seperti ini di view nya : \n Visa Test

    klo query itu dijalankan di db gui : http://postimg.org/image/ecemlpulh/


    gimana y master, cara ngilangin tag \n nya? :D
  • entah yg bikin masalah datatables nya di :
    $this->datatables->generate('json', '');

    atau fungsi json_encode nya php

    output ini :
    "tour_leader_name": "\\n                                  Visa Test                              ",

    yg semestinya cuma :
    "tour_leader_name": "\n                                  Visa Test                              ",

    di escape jadi :
    "tour_leader_name": "\\n                                  Visa Test                              ",



    cara elo banyak ...

    ubah \\n jadi \n :
    echo str_replace('\\n','\n',$this->datatables->generate('json', ''));

    atau ubah \n jadi <br> :
    $this->datatables->select2('id, nama_produk, nama_paket,
    REPLACE(REPLACE(nama_pemimpin,E\'\n\',\'<br>\'),E\'\r\',\'\') as
    nama_pemimpin')

    atau ubah \n jadi <br> :
    echo str_replace('\\n','<br>',$this->datatables->generate('json', ''));

    atau hilangkan sama sekali \n nya
    $this->datatables->select2('id, nama_produk, nama_paket,
    REPLACE(REPLACE(nama_pemimpin,E\'\n\',\'\'),E\'\r\',\'\') as
    nama_pemimpin')

    atau hilangkan sama sekali \n nya
    echo str_replace('\\n','',$this->datatables->generate('json', ''));

    terserah ... butuh elo yg mana ... elo pilih sendiri
    tidak muncul di browser, tapi sebenernya ada di source html pake \n
    mau dimunculkan juga di tampilan browser pake <br>
    atau mau dihilangkan sekalian
Sign In or Register to comment.