RSS
Tampilkan postingan dengan label open source. Tampilkan semua postingan
Tampilkan postingan dengan label open source. Tampilkan semua postingan

Creation of dynamic property CI_URI::$config is deprecated

Error ini terjadi pada penggunaan CodeIgniter pada environment PHP versi 8 ke atas, sedangkan versi PHP yang digunakan ada di versi 5. Error nya seperti ini:

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_URI::$config is deprecated

Filename: core/URI.php

Line Number: 102

 

Solusi :

Tambahkan kode  #[\AllowDynamicProperties] pada beberapa file di bawah ini :

/system/core/URI.php

#[\AllowDynamicProperties] class CI_URI {

/system/core/Router.php

#[\AllowDynamicProperties] class CI_Router {

/system/core/Loader.php

#[\AllowDynamicProperties] class CI_Loader {

/system/core/Controller.php

#[\AllowDynamicProperties] class CI_Controller {

/system/database/DB_driver.php

#[\AllowDynamicProperties] abstract class CI_DB_driver {

Jika masih muncul warning di halaman web nya, disable fitur menampilkan warning di

php.ini

error_reporting = E_ALL & ~E_DEPRECATED

in code:

ini_set('error_reporting', E_ALL & ~E_DEPRECATED);

 Solved!!



Instalasi MobSF di MacOS

MobSF adalah singkatan dari Mobile Security Framework yang digunakan untuk melakukan pentest pada aplikasi Android, IOS dan Windows. MobSF ini dapat diinstal di Windows, Linux dan MacOS.

Untuk MacOS, cara instalasinya seperti ini

Instal Python

    brew install python3

Download MobSF

Cara 1 dapat dengan cloning dari Git 

    git clone https://github.com/MobSF/Mobile-Security-Framework-MobSF.git

Cara 2 dengan downlod langsung dari github nya

    https://github.com/MobSF/Mobile-Security-Framework-MobSF

Instal MobSF

    ./setup.sh

Run MobSF

    ./run.sh

Akses MobSF di browser pada url localhost:8000

Done

CodeIgniter CSRF Error

CSRF Error ini biasanya karena kita ingin mengamankan Cookies tetapi ada implementasi yang tidak sesuai. Bisa karena di form input atau dikonfigurasi.

Bentuk Error nya seperti ini :

“The action you have requested is not allowed.”

SOLUSI :

Cek file config.php dan cari konfigurasi csrf .

Jika $config['csrf_protection'] = true; 

maka harus dilakukan konfigurasi tambahan ke bagian yang lain yaitu :

$autoload['helper'] = array('url', 'file','form');

dan pada view, form dikonfigurasi menjadi seperti ini 

<?php echo form_open_multipart('admin/file_upload'); ?>
 

Jika tidak mau repot, dibuat False saja

$config['csrf_protection'] = false;
 
Done 

Error Session pada Code Igniter

PERMASALAHAN

Error ini terjadi ketika saya melakukan migrasi dari PHP5 ke PHP7.  Cek deh apakah sama error nya.

A PHP Error was encountered

Severity: Warning

Message: mkdir(): Invalid path

Filename: drivers/Session_files_driver.php

Line Number: 117

Backtrace:

File: C:\xampp\htdocs\ci-test\application\controllers\login.php
Line: 7
Function: __construct

File: C:\xampp\htdocs\ci-test\index.php
Line: 292
Function: require_once

SOLUSI

Buka file config.php, kemudian ubah di baris 385

$config['sess_save_path'] = NULL;

jadi

$config['sess_save_path'] = sys_get_temp_dir();

Done.


Fatal error: Call-time pass-by-reference has been removed (SOLVED)

Biasanya kalau kita habis cari-cari open source PHP, terus kita coba instal sendiri di server lokal. Kadang nemuin Error seperti ini :

Fatal error: Call-time pass-by-reference has been removed


Kenapa begitu? Lagi-lagi karena perbedaan versi PHP yang digunakan. Source code PHP yang kita donlot adalah di bawah PHP Versi 5.x. Sedangkan PHP di server lokal kita udah versi 5.x ke atas. 

Klo diliat-liat ke belakang, error solved di blog ini rata-rata karena perbedaan versi ya.

SOLUSI

Cari baris kode yang kena error itu. 

Ganti inisiasi variabel 
&$ 
menjadi 
$

Contoh :

$this->html->errorMsgSet(&$msg);

ganti 

$this->html->errorMsgSet($msg);

Udah gitu ajah.

Masalah Session di PHP

Masalah klasik tentang session di PHP.
Pesan Error yang diterima seperti ini :

Notice: A session had already been started - ignoring session_start()

cara mudahnya untuk menghilangkan error itu adalah jangan tulis begini

session_start(); 
tapi lebih baik begini

<?php
    if(!isset($_SESSION)) 
    { 
        session_start(); 
    } 
?>
Done.


Solusi Error Pada core/Common.php di CodeIgniter

Solusinya 

Jika menemukan error pada CodeIgniter seperti ini 

A PHP Error was encountered
Severity: Notice
Message: Only variable references should be returned by reference
Filename: core/Common.php
Line Number: 257

Langsung saja buka file itu di [folder ci]/system/core/Common.php, kemudian ganti kode di baris 257 dari 

Solusi Port VMWare dan XAMPP Bentrok

Permasalahan yang sering terjadi apabila kita menginstal XAMPP dan VMWare dalam satu PC adalah beberapa port yang dijalankan melalui XAMPP tidak berjalan karena sedang digunakan oleh VMWare. Biasanya port yang bentrok adalah Port 80 dan port 443.

Misalkan port yang bentrok adalah 443. Salah satu solusinya (yang berhasil dicoba cara ini sih) adalah mengganti port 443 yang ada di setting XAMPP. Berikut langkah-langkah yang harus dilakukan :

Cara 1 (Mengganti Port Pada XAMPP) :
  • Buka file httpd-ssl.conf di folder xampp/apache/conf/extra
  • Cari dan ganti angka 443 di dalam file itu dan ganti dengan port lain yang masih kosong misalkan 4430
  • Simpan file httpd-ssl.conf
  • Jalankan kembali Apache di XAMPP

Cara 2 (Mengganti Port Pada VMWare):
  • Buka aplikasi VMWare dan pilih menu Edit->Preferences
  • Pada pilihan menu sebelah kiri, klik Shared VMs kemudian klik tombol Change Settings 
  • Klik tombol Disable Sharing di bagian atas (lihat gambar di bawah), sehingga tombol menjadi Enable Sharing
  • Ganti port HTTPS dari 443 menjadi 4430 atau yang lain, dan klik tombol Enable Sharing kembali
  • klik tombol OK
  • Jalankan kembali Apache di XAMPP
Klik Tombol Disable Sharing
Ganti Port HTTPS

Solusi Tidak Bisa Menjalankan Apache (1)

Yaks, buka lagi blog yang udah lama ga keisi akibat kesibukan penulis. Pada kali ini, kita bahas lagi solusi kenapa apache tidak jalan. Kok ada angka 1 (1), hehehe karena saya lupa yang berapa kali saya tulis solusi agar apache jalan (sebenarnya malas buka artikel lama -_-). Jadi mulai dari angka 1 lagi deh.

Error yang muncul ketika gagal menjalankan Apache seperti ini ;
(OS 10048)Only one usage of each socket address (protocol/network address/port)
is normally permitted.  : make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
lebih jelasnya lihat gambar di bawah ini deh.








Ini dia solusi nya biar jalan lagi. Ada beberapa alternatif, silakan dicoba mana yang jadi solusi terbaik buat kita.
  1. Jika komputer kita terinstal IIS selain Apache, uninstal IIS tersebut. Sehingga yang jalan hanya dari Apache aja. Atau jika ada aplikasi lain yang menggunakan port 80 misalkan Skypea, lakukan hal yang sama.
  2. Kalau kita masih bandel tetep mau jalanin IIS juga plus ada Skypea, ya sudah Apache mengalah. Pindahkan port 80 menjadi port lain misalkan port 3128. (mengganti portnya di httpd.conf)
Semoga berhasil.

Apache Server Tidak Jalan di Windows 7, Ini dia solusinya..

Setelah kejadian apache server "ngambek" seperti artikel saya sebelumnya, masalah masih muncul.Hei,kok ga bisa jalan lagi?Solusi yang sebelumnya juga udah dicoba tetapi tetep "ngambek". Ternyata ada service di Windows 7 yang membutuhkan port 80 sehingga apache server tidak jalan.

Sebelum anda meng-uninstal XAMPP kemudian meng-instal lagi (buang-buang waktu, seperti yang saya alami), coba cara yang satu ini agar Anda tidak repot seperti saya.


  1. Buka Regedit 
  2. Buka HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/HTTP 
  3. Pada property Start ganti value menjadi 0 
  4. Restart Komputer Anda 
  5. Alterntif lain jika langkah nomor 3 tidak berhasil, buat property baru dengan nama NoRun dan isi value dengan nilai 1.


Sekali lagi semoga bermanfaat...

Mengaktifkan OpenSSL di XAMPP

Kesalahan yang terjadi apabila OpenSSL untuk PHP di XAMPP tidak diaktifkan (disable) ditandai dengan error Call to undefined function openssl_pkey_new() .

Solusi :
aktifkan atau ubah status OpenSSL pada XAMPP menjadi enable

Caranya :
  1. Buka file php.ini dan hilangkan tanda titik koma pada ;extension=php_openssl.dll
  2. Jika dalam file php.ini tidak ada baris ekstensi tersebut, silakan tambahkan extension=php_openssl.dll di bagian Dynamic Extensions
  3. Catatan : Pastikan file php_openssl.dll ada di dalam folder xampp\php\ext).
  4. Restart XAMPP

Solusi Error : Fatal error: Maximum execution time of 30 seconds exceeded

Nah klo ini gara-gara settingan akses dibatasi hanya 30 detik. Biar lebih lama karena memang butuh waktu yang cukup lama apalagi untuk konfigurasi web, silakan dimodifikasi php.ini.
Cari baris 442, dengan kode

max_execution_time = 30

ganti menjadi lebih lama, misalkan 3 menit (180 detik)

max_execution_time = 180


Restart kembali XAMPP!

Solusi Error : Undefined offset di PHP

Error ini sering terjadi apabila terdapat suatu array string yang tidak ada tetapi ingin ditampilkan atau diproses. Solusinya lagi-lagi sangat mudah, tambahkan kondisi isset untuk memastikan bahwa suatu array string itu sudah ada isinya atau belum.


Studi Kasus
       
1. if ( ($strLine[0] != "#") && (strlen($strLine) > 0))
2.    {       
3.     .....
4.    }
5.    else
6.    {
7.     .....
8.    
9.        if (($splitConfig[2] == 'encoding'))
10. {
11.   $DEFAULT_CHARSET = trim(substr($strLine, $nPos+1));
12. }
13.    }
       

Error
Error yang terjadi adalah :
Notice: Undefined offset: 0 in ... on line 1 
artinya array string ke-0 pada kode baris 1 tidak ada
Notice: Undefined offset: 2 in ... on line 9
artinya array string ke-2 pada kode baris 9 tidak ada

Solusi
Tambahkan isset pada tiap variabel array string menjadi seperti ini :
       
if ( (isset($strLine[0])) && ($strLine[0] != "#") && (strlen($strLine) > 0))
    {       
     .....
    }
    else
    {
     .....
    
        if ((isset($splitConfig[2])) && ($splitConfig[2] == 'encoding'))
 {
   $DEFAULT_CHARSET = trim(substr($strLine, $nPos+1));
 }
    }
       

Instal Pidgin di CentOS

Tidak seperti Distro linux lainnta, CentOS memiliki cara tersendiri untuk melakukan instalasi. Ini adalah cara untuk instal Pidgin di CentOS :
  1. Download file pidgin.repo dari http://rpm.pidgin.im/centos/pidgin.repo atau buat file baru dari Text Editor lalu ketik command berikut lalu simpan dan beri nama pidgin.repo.
 [pidgin]
name=Pidgin for RHEL/CentOS $releasever - $basearch baseurl=http://rpm.pidgin.im/centos/$releasever/$basearch/ 
enabled=1 
gpgcheck=1 
gpgkey=http://rpm.pidgin.im/RPM-GPG-KEY-pidgin 

[pidgin-debuginfo]
name=Pidgin for RHEL/CentOS $releasever - $basearch - Debug baseurl=http://rpm.pidgin.im/centos/$releasever/$basearch/debug/ 
enabled=0 
gpgcheck=1
gpgkey=http://rpm.pidgin.im/RPM-GPG-KEY-pidgin

[pidgin-source]
name=Pidgin for RHEL/CentOS $releasever - $basearch - Source baseurl=http://rpm.pidgin.im/SRPMS/ 
enabled=0
gpgcheck=1
gpgkey=http://rpm.pidgin.im/RPM-GPG-KEY-pidgin

  1. Copy atau pindahkan ke folder /etc/yum.repos.d/  sebagai root
  2. [root@localhost Desktop]# mv pidgin.repo /etc/yum.repos.d/
  3. Ketik > yum install pidgin sebagai root
  4. Tunggu hingga semua komponen didownlod yang artinya Pidgin berhasil diinstal.
  5. Jalankan Pidgin melalui Applications –> Internet –> Pidgin Internet Messenger
Selamat Menikmati.. :-)

Kirim Buzz dengan Pidgin

Kalau Anda mengenal Yahoo Messenger(YM), maka ada satu program lagi yang menarik. Namanya Pidgin. Program ini bisa dipakai untuk banyak protokol(protokol:bisa diumpamakan sebagai bahasa). Salah satunya untuk protokol Yahoo.

Namun ada satu kelemahan. Bagi pengguna YM, kita terbiasa menggunakan BUZZ untuk menge-BUZZ lawan bicara, tapi di mana bisa kita temukan di pidgin? Pada awalnya penulispun bingung. Namun ternyata hanya dengan mengetik /buzz maka lawan bicara akan ter-BUZZ.