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

Multiple variable url di php

edited September 2016 in Diskusi Pemrograman & IT
Siang master,
Saya ada script

<?php 
$nik = isset($_POST['q']) ? $_POST['q'] : '';
$id_agama = isset($_POST['id_agama']) ? $_POST['id_agama'] : '';
 
$paging .='<a target="_blank" title="Print" data-toggle="tooltip" class="btn btn-success" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$nik.'/'.$id_agama.'">
<i class="fa fa-print"></i> Print </a> ';
 
?>

Jadi ceritanya saya mau link yang akan di print itu berdasarkan isian form yang di tampung di variabel tersebut.
Cuman klo pake code sy hasil linknya jika :
1. Tanpa ada inputan
2. Jika variabel nik di input
3. Jika variabel id_agama di input
4. Jika variabel nik & id_agama di input

hasil url nya jadi ga dinamis, enaknya gimana ya master biar saya bisa print sesuai dengan hasil pencariannya. Oia, saya pake CI di sini.

Mohon bantuannya 
^:)^
Tagged:

Comments

  • master ada yang bisa bantu ga ?
  • edited September 2016
    sy msh krng phm maksudnya,
    yang sy tau itu kalo link mau dinamis gunakan sistem GET contoh :

    jd kalo di km punya : 
    gt?
  • edited September 2016
    Gini mas,ceritanya saya mau supaya hasil pencariannya itu bisa di export ke pdf.
    viewnya
    <form>NIK<input type="text" name="q" class="form-control" id="q" placeholder="Search..." x-webkit-speech="">
     
    <label class="col-lg-1 control-label">Agama</label>
    <select name="id_agama" id="id_agama" class="form-control">
    <option value="">-- Select Agama --</option>
    <?php foreach($select_agama as $pr){?>
    <option value="<?php echo $pr->id;?>"><?php echo $pr--->nama_agama;?></option>
    <?php } ?>
    </select>
    </form>
    <table id="data-table" class="table table-striped table-bordered table-hover">
    <thead>
    <tr>
    <th>No.</th>
    <th>NIK</th>
    <th>Nama Lengkap</th>
    <th>Tgl Lahir</th>
    <th>Tgl Masuk</th>
    <th>Tgl Kontrak Habis</th>
    <th>Lulusan</th>
    <th>Golongan</th>
    <th>Departemen</th>
    <th>Jabatan</th>
    <th>Seksi</th>
    <th>Status</th>
    <th>Sisa Cuti</th>
    <th>Action</th>
    </tr>
    </thead>
    <tbody>
    <!--Appended by Ajax-->
    </tbody>
    </table>
    <script>
     
    function get_data(url,q,id_agama){
     
    if(!url)
    url = base_url+'karyawan/report_data_karyawan/get_data';
     
    var q=$("#q").val();
    var id_agama=$("#id_agama").val();
     
    $.ajax({
     
    url:url,type:'post',dataType:'json',
    data:{q:q,id_agama:id_agama},
    success:function(result){
    console.log(q);
    $("#data-table tbody").html(result.rows);
    $("ul.pagination").html(result.paging);
    $(".page-info").html(result.page_info);
    },
    });
    }
     
    function do_search(){
     
    get_data('',$("#q").val());
     
    }
    $(function(){
     
    get_data();//initialize
     
    $(document).on('click',"ul.pagination&gt;li&gt;a",function(){
     
    var href = $(this).attr('href');
    get_data(href);
     
    return false;
    });
     
    $("#btn-search").click(function(){
    do_search();
     
    return false;
    });
     
    });
    </script>

    controller
    <?php
    public function get_data(){
     
    $limit = $this->config->item('limit');
    $offset= $this->uri->segment(4,0);
    $q = isset($_POST['q']) ? $_POST['q'] : '';
    $id_agama = isset($_POST['id_agama']) ? $_POST['id_agama'] : '';
    $data = $this->report_data_karyawan_model->get_data($offset,$limit,$q,$id_agama);
    $rows = $paging = '';
    $total = $data['total'];
    if($data['data']){
     
    $i= $offset+1;
    $j= 1;
    foreach($data['data'] as $r){
     
    $rows .='';
     
    $rows .=''.$i.'';
    $rows .=''.$r->nik.'';
    $rows .=''.$r->nama_lengkap.'';
    $rows .=''.$r->tanggal_lahir.'';
    $rows .=''.$r->tanggal_masuk.'';
    $rows .=''.$r->tanggal_kontrak_akhir.'';
    $rows .=''.$r->nama_lulusan.'';
    $rows .=''.$r->nama_golongan.'';
    $rows .=''.$r->nama_departemen.'';
    $rows .=''.$r->jabatan.'';
    $rows .=''.$r->nama_seksi.'';
    $rows .=''.$r->nama_status_kerja.'';
    $rows .=''.$r->total_cuti.'';
    $rows .='';
    $rows .='<a target="_blank" title="Detail" class="a-success" href="'.base_url().'karyawan/report_data_karyawan/detail/'.$r->id_karyawan.'">
    <i class="fa fa-eye"></i> Detail
    </a> ';
     
    $rows .='';
     
    $rows .='';
     
    ++$i;
    ++$j;
     
    }
     
    if ($q) {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$q.'">
    <i class="fa fa-print"></i> Print
    </a> '; }
    if ($id_agama) {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$id_agama.'">
    <i class="fa fa-print"></i> Print
    </a> '; }
    else {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/">
    <i class="fa fa-print"></i> Print
    </a> '; }
     
     
    }else{
     
    $rows .='';
    $rows .='No Data';
    $rows .='';
     
    }
    echo json_encode(array('rows'=>$rows,'total'=>$total,'paging'=>$paging));
    }
     
    public function data_karyawan_pdf($q=false,$id_agama=false){
    var_dump($q,$id_agama);
    die();
    $karyawan['lap_pdf'] = $this-&gt;report_data_karyawan_model-&gt;get_karyawan_pdf($q,$id_agama)->result();
    $this->_render('report_data_karyawan_pdf',$karyawan);
    }
    ?>

    di view, ngambil data pake ajax ke function get_data, setelah itu di tampilin ke viewnya lagi.
    Nah di isi tabelnya ada di funtion itu beserta link buat export ke pdf. Jadi variabel dari ajax nya mau tak kirim lagi ke function data_karyawan_pdf buat di query supaya bisa di select berdasarkan variabel itu.

    Masalahnya, kalau saya var_dump($q,$id_agama); die(); dengan kondisi id_agama terisi = 1. Hasilnya string(1) "1" bool(false) seharusnya hasilnya  bool(false) string(1) "1". URL nya jadi http://192.168.0.2/hris/karyawan/report_data_karyawan/data_karyawan_pdf/1
    Mungkin aga ribet ya cara export saya, ada masukan lain cara exportnya ? 
  • lalu yang dimaksud mau bikin dinamis itu seperti apa? linknya
  • edited September 2016
    tadinya kan scriipt saya gini

    <?php
    $paging .='<a target="_blank" title="Print" data-toggle="tooltip" class="btn btn-success" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$nik.'/'.$id_agama.'"-->
    <i class="fa fa-print"></i> Print ';
    ?>

    berhubung saya bingung supaya bisa dinamis gimana caranya, saya ubah pake kondisi variabelnya.

    <?php
    if ($q) {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$q.'"-->
    <i class="fa fa-print"></i> Print
    '; }
    if ($id_agama) {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$id_agama.'">
    <i class="fa fa-print"></i> Print
    </a> '; }
    else {
    $paging .='<a target="_blank" title="Print" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/">
    <i class="fa fa-print"></i> Print
    </a> '; }
    ?>

    eh malah ga dapat nyimpen variable yang ke 2.

    Mungkin ada solusi lainnya mas. Intinya sie gimana caranya ngelempar variable dari ajax nya biar bisa di select lagi pas mau export pdf (Biar sesuai sama filter fi formnya).
  • ngelempar variable dari ajax nya biar bisa di select lagi pas mau export pdf
    tinggal maenin url pake get jadi bisa di lempar variable beradasarkan url-nya
    contoh :
    website/print.php/&id=4&dvs=2

    tinggal di GET,
    $id = $_GET['id'] // 4
    $dvs = $_GET['dvs'] // 2
    select * from user where id = $id  and divisi = $dvs where .......
  • cara penulisan di controllernya gimana ya ?

    <a href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.&$q.''.&$id_agama.'">
    :D
  • di check dl dengan isset 1-1
    $url = "";
    if(isset($q))
    $url .= '&id='.$q;

    if(isset($id_agama))
    $url .= '&id_agama='.$id_agama;

    lalu tinggal di call aja

    <a href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$url.'">
    hasil :
  • edited September 2016
    uda di coba mas,
    hasilnya

    The URI you submitted has disallowed characters.

    URL kondisinya tidak ada yang di input.
    kayanya di CI URL ga boleh ada karakter tertentu deh yak..
  • update :

    uda bisa karakternya, ada edit dikit di config.php nya,
    kalo di dump hasilnya

    string(16) "&id=8&id_agama=1"

    masalah selanjutnya, cara pecahin URL itu jadi variabel php gimana ya ?
    $id=8
    $id_agama=1
    biar bisa di query ke db nantinya. 
  • edited September 2016
    iy mknya sy pecah2 penulisannya
    sewaktu kamu pindah ke url-nya
    misal-nya dari data_mhs.php/&id=5 
    ke print.php
    di print.php gunakan GET
    $id = GET['id'];



  • uda saya tambahin ini di print.php
    $q = $_GET['id'];
    $id_agama = $_GET['id_agama'];

    hasilnya :
    1. Jika form tidak di isi hasinya NULL NULL
    2. Jika ke isi ID nya hasinya NULL NULL
    3. Jika form ke isi semua hasinya NULL NULL

    Jadi value dari variablenya jika keisi ga kekirim mas 

  • edited September 2016
    jadi code di controllernya

    <?php
    public function get_data(){
    $q = isset($_POST['q']) ? $_POST['q'] : '';
    $id_agama= isset($_POST['id_agama']) ? $_POST['id_agama'] : '';
    $data = $this->report_data_karyawan_model->get_data($offset,$limit,$q,$id_agama);
     
    $url = "";
    if(isset($q))
    $url .= '&q='.$q;
     
    if(isset($id_agama))
    $url .= '&id_agama='.$id_agama;
     
    $paging .='<a target="_blank" href="'.site_url().'karyawan/report_data_karyawan/data_karyawan_pdf/'.$url.'">
    Print</a> ';
     
    echo json_encode(array('rows'=>$rows,'total'=>$total,'paging'=>$paging));
    }
     
    public function data_karyawan_pdf($url){
    $q = $_GET['q'];
    $id_agama = $_GET['id_agama'];
     
    var_dump($q,$id_agama);
    die();
    }
    ?>



    ini uda bener mas ?
  • edited September 2016
    wah kalo kyk gt ganti sistem codingnya jgn pake isset pake if(empty($q))
    kirain kg ada yg $q ="";
  • uda saya ganti jadi ini

    $url = "";
    if(empty($q))
    $url .= '&id_agama='.$id_agama;

    if(empty($id_agama))
    $url .= '&q='.$q;

    jadi hasilnya masih NULL NULL mas meskipun formnya di input
  • ae haha terbalik, if (!empty($q))

  • terbalik di url nya kan ?
    itu code saya uda bener kayanya, cuman masih belum dapet value formnya mas.

    Klo di cetak masih NULL NULL
  • UPDATE :

    uda saya ganti lagi jadi 

    $url = "";
    if(!empty($q))
    $url .= '&q='.$q;

    if(!empty($id_agama))
    $url .= '&id_agama='.$id_agama;

    tapi hasilnya masih NULL NULL meskipun di input value formnya.
  • edited September 2016
    UPDATE Lagi :

    kalau yang di dump ($url);
    hasilnya
    string(15) "&q=8&id_agama=1"
    dengan kondisi semua keinput.

    Kalau
    $q = $_GET['q'];
    $id_agama = $_GET['id_agama'];
    var_dump($q,$id_agama);
    die();
    hasilnya
    NULL NULL

    kayanya masih belum bisa di jadiin variable mas untuk value formnya.
  • edited September 2016
    itu kamu ada send pk form method GET ngga?? atau sama2 1 form?
    dia sama kyk POST hrs di method jg fr file 1.php ke file2.php
  • jadi di view ada form pake POST, ambil data dari db berdasarkan variabel yg di post pake ajax.
    Nah data dari db tadi di tampilin di view yang sama. Di tabelnya ada link buat cetak.

    Nah gimana cara kirim variabel tadi dari ajax ke function lain supaya di function lain tersebut di bentur variabelnya lagi buat select print.

    Ini view tamplatenya mas
    image
  • mirip kyk si @goodboy06 haha lg pd bikin skripsi kyknya.
    . . . . . . Jadi kamu narik data dr db dengan ajax berdasarkan variable & di tampilkan di form yang sama ? & cara passing variable yg sukses tadi dr ajax ke function lain?

    masukin function -nya ke function success yg ajax 
    lalu di functionnya tambahin $textStatus
    liat d sini kl ngga
  • bukan skiprsi mas'e, ini project HR di kantor. Kasian masih manual semua datanya  :D
    OK besok tak coba tipsnya 
  • OK uda bisa fix. thanks mas @blackarch ; :-bd
Sign In or Register to comment.