Kamis, 09 Januari 2020

Cara menemukan angka yang lompat dari angka yang berurutan

Jadi ceritanya begindang....
Ane dah bikin program penjualan dan masing - masing marketing punya hak akses untuk membuat konfirmasi permintaan,
So karena marketingnya banyak, dan ada user yang bikin terus hapus so jadinya counter penomoran jadi lompat lompat dan gak urut.

Nah saat ada marketing yang bikin konfirmasi trus kemudian gak jadi dan di hapus so bikin ada nomor yang bolong dan lompat,
untuk mengatasinya bikin script ini nih di PHP dan codeignitternya

untuk pakai bahasa lainnya misal c++, java, python, c#
kunjungi link ini ya...

https://www.geeksforgeeks.org/find-missing-element-in-a-sorted-array-of-consecutive-numbers/

okkay untuk yang di PHP berikut scriptnya
okkay pertama di controller helper bikin ini nih

 $arr1 =  {1,2,3,5,6,7,8};
 $n = count($arr1);
$xx = findMissing($arr2, $n);

dan di helper codeignitter bikin function ini

function findMissing($arr, $n)
{
    $l = 0;
    $h = $n - 1;
    while ($h > $l) {
        $mid = floor($l + ($h - $l) / 2);
        // Check if middle element is consistent 
        if ($arr[$mid] - $mid == $arr[0]) {
            // No inconsistency till middle elements 
            // When missing element is just after 
            // the middle element 
            if ($arr[$mid + 1] - $arr[$mid] > 1)
                return $arr[$mid] + 1;
            else {
                // Move right 
                $l = $mid + 1;
            }
        } else {
            // Inconsistency found 
            // When missing element is just before 
            // the middle element 
            if ($arr[$mid] - $arr[$mid - 1] > 1)
                return $arr[$mid] - 1;
            else {
                // Move left 
                $h = $mid - 1;
            }
        }
    }
    // No missing element found 
    return 0;
}


So kalau $xx di var dump muncul deh hasilnya 4
sekian...

Cara scan image gambar barcode menggunakan PHP di UBUNTU menggunakan PHPZxing

Mumpung kerjaan gak terlalu overload sekarang ak mau nulis nulis tentang cara scan image gambar barcode pakai PHP, ada ide dari bos kalau dia pingin semua PR (purchase requisiton) atau pembelian lah semua datanya di kasih barcode dulu di kantor pusat, trus untuk memastikan barang tersebut sampai ke cabang dengan selamat, maka cabang harus scan barcode barang tersebut so barang tersebut udah benar-benar sampai ke customer. Sebenernya ini pasti mudah sekali kalau pakai apps, tetapi ternyata pakai php juga bisa, tapi agak ribet sih karena barcode harus di foto kemudian di upload ke server baru dah hasil barcodenya bisa ke scan...

Berhubung library ini harus execute java dan ane ngubek ngubek  pakai xampp di windows dan gak berhasil terpaksa deh harus pakai ubuntu, cz tutorial yang ak dapatkan pakai linux.

berikut ini tutorial yang ak dapatkan
https://github.com/dsiddharth2/php-zxing

okkay gak pakai lama lagi berikut ini step-stepnya ...

  1. Install dulu ubuntu web server, php dan kroni kroninya juga framework codeignitter
  2. Berhubung ane pakai codeignitter so install phpzxing nya pakai composer so diisntall dengan terminal composer require dsiddharth2/php-zxing
  3. Okkay setelah library selesai tinggal bikin file cek.php  di controller nya codeignitter

defined('BASEPATH') or exit('No direct script access allowed');

use PHPZxing\PHPZxingDecoder;

class cek extends CI_Controller
{

     public function index()
    {
                $decoder        = new PHPZxingDecoder();
                $data           = $decoder->decode('./assets/jpg_temp/barcode.jpg');  //lokasi file jpg
                if ($data->isFound()) {
                    $b = $data->getImageValue();

                    //misal pingin di var dump langsung hasil scan barcodenya
                    var_dump($b);
                    die();

       }
 }
?>


Simpel banget sih, tinggal jalankan url http://localhost/latihan/cek udah ketahuan hasil scan barcodenya

kalau ada yang tau ya cara nya biar bisa di windows, karena kalau sy lihat sebenarnya ada settingan
$decoder->setJavaPath('/your/path/to/java');
buat execute java nya, tapi ane gagal saat 
nyoba di windows berkali kali gak 
berhasil...
 

Sekian thanks.....

Senin, 16 Desember 2019

Cara convert file doc ke pdf di PHP menggunakan OS UBUNTU dan libreoffice

Dear All,,
Sebenarnya yang saya kerjakan adalah membuat aplikasi surat yang schemanya seperti ini

  1. User buat surat menggunakan DOC kemudian upload filenya
  2. Kemudian system otomatis convert doc tersebut ke txt kemudian dari file txt tersebut di simpan ke database.
  3. Kemudian dengan php word akan menambahkan qrcode ke file, kemudian file tersebut di convert ke pdf

Tapi untuk saat ini cara install libre office dan convertnya aja ya...

  1. Pertama install ubuntu beserta php, mysql dan kroni2 nya. Search aja di tempat lain pasti udah banyak.
  2. kemudian install libreoffice dg cara ketik : apt-get install libreoffice
  3. Sayangnya libreoffice gk bisa di akses dengan user www-data, so kita gk bisa masukkan command libre office secara langsung, tetapi ada cara lain yaitu menginstall unoconv caranya ketik : apt-get install unoconv
  4. Nah agar unoconv bisa diakses oleh user www-data maka kita perlu menambahkan file di folder  /etc/sudoers.d/ misal nama file www-data maka kita 
    ketikkan sudo nano /etc/sudoers.d/www-data
    terus isikan 
    www-data ALL=NOPASSWD: /usr/bin/unoconv
    kemudian simpan
    scrip diatas agar unoconv gk perlu user password saat manggilnya


    Selesai sekarang kita tinggal bisa eksekusi convert php nya
    misal scriptnya
     $comando = 'sudo unoconv -o ./assets/pdf/a.pdf -f pdf ./assets/docx_temp/a.docx';
     exec($comando);
  5. -o adalah output directorynya, -f pdf adalah mau convert ke pdf, kemudian setelahnya ada lokasi file docxnya,


     Sekian, dan maaf kalau berantakan

Minggu, 15 Desember 2019

Cara Error Query MYSQL only_full_group_by di UBUNTU

Hmm, ternyata secara default mysql  di ubuntu untuk sql mode nya telah tersetting only_full_group_by sehingga query group by saya jadi error.
Oke kawan berikut cara mengatasi error tersebut

  • Pertama buka phpmyadmin
  • Kemudian pilih home
  • kemudian pilih variable kemudian
  • Kemudian ketikkan sql_mo di kolom cari biar gampang nyarinya
  • Trus pada sql mode dan klik edit



Trus hapus tuh only_full_group_by

Beres deh...

Tapi sayangnya kalau direstart balik lagi,
Kalau ingin permanet  di ubuntu kita perlu menambahkan file di dalam folder /etc/mysql/conf.d/
so untuk membuatnya kita ketikkan script berikut

sudo nano /etc/mysql/conf.d/disable_strict_mode.cnf
terus isikan 

[mysqld]
sql_mode=IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION


simpan kemudian restart... beres deh...

Selasa, 08 Mei 2012

Enable Remote Access To MySQL Database Server?

Edit /etc/my.cnf, enter:
# vi /etc/my.cnf
Modify or append as follows:
 
# make sure the following line is deleted or commented out
# skip-networking
bind-address    = 192.168.1.5
 

Kamis, 28 Juli 2011

Perintah Dasar Redhat

Untuk Mounting CD-ROM :
mount /dev/cdrom /mnt/cdrom

Untuk CEK Aplikasi yg terinstall :
misal samba
rpm -qa | grep samba

KONFIGURASI SAMBA

A. Mengaktifkan samba
[root@synatzier profiles]# service smb start atau restart
Shutting down NMB services: [ OK ]
Shutting down SMB services: [ OK ]
Starting NMB services: [ OK ]
Starting SMB services [ OK ]
[root@synatzier profiles]#
B. Membuat user samba
1. Buat username Linux dengan perintah useradd
[root@synatzier profiles]# useradd tom
[root@synatzier profiles]# ls tom
[root@synatzier profiles]# chown tom tom/
Pembuatan user baru ini tak perlu menggunakan password agar username tersebut tidak dapat
digunakan untuk telnet atau ssh ke server.Penggantian kepemilikan milik tom, yang hanya
dapat diakses oleh user tom.
2. Selanjutnya buat agar user name tersebut tersedia pada Samba server menggunakan perintah
smbadduser seperti dibawah ini:
[root@synatzier profiles]# smbadduser
———————————————————-
[root@synatzier profiles]# smbadduser Natsir:Natsir
Adding: tom to /etc/samba/smbpasswd
Added user Natsir.
———————————————————-
ENTER password for Natsir
New SMB password:
Retype new SMB password:
Password changed for user Natsir.
Password changed for user Natsir.
[root@synatzier profiles]#
Gunakan perintah smbpasswd untuk mengganti password user samba, dan password di sistem
Linux dengan di Server Samba dapat berbeda.
C. Untuk mencoba Samba
a. Aktifkan home
b. pada lokasi : smb://[no ip komputer anda]
c. masukan user : tom
d. masukan password : tom
coba cek apakah berhasil ?
D. untuk menambah folder yang di sharing
Dengan GUI :
a. main menu ->System setting -> server Setting -> samba Server
b. klik add
c. klik browse : pilih folder yang akan di sering
d. beri keterangan folder tersebut
c. klik OK

Kembali Ke Mail Klasik Yahoo

Langsung aje ye.....

Pertama disable java
kemudian Klik link di bawah ini

http://id.mg5.mail.yahoo.com/neo/launch?reason=no_js_enabled

Kemudian klik return to email clasic

Beres dah....