Minggu, 30 November 2025

Mengatasi Error strpos() pada HMVC Codeigniter 3 di PHP 7.3

 pesan error strpos() kurang lebih seperti dibawah ini :

Message: strpos(): Non-string needles will be interpreted as strings in the future. Use an explicit chr() call to preserve the current behavior

Berikut langkah-langkahnya untuk memeperbaiki error strpos() jika kalian punya masalah yang sama dengan punya saya :

1. Buka file Application/third_party/MX/Router.php

2. Kemudian di baris 239 terdapat blok kode seperti di bawah ini :

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if( strpos($class, $suffix) === FALSE ) //sebelum
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}
PHP

Didalam fungsi tersebut terdapat logika untuk mengecek ada tidaknya $suffix di dalam variable $class, di versi php sebelumnya strpos ini masih tidak menyebabkan error, tetapi mulai dari php versi 7.3 sepertinya php lebih strict dan mengeluarkan pesan error untuk penggunaan strpos() ini.

3. Untuk mengatasinya ubah baris kode diatas menjadi seperti dibawah ini :

public function set_class($class)
	{
		$suffix = $this->config->item('controller_suffix');
		if( $suffix && strpos($class, $suffix) === FALSE) //sesudah
		{
			$class .= $suffix;
		}
		parent::set_class($class);
	}
PHP


Solusi SELECT list is not in GROUP BY clause and contains nonaggregated column

Salah satu error yang sering terjadi ketika melakukan query GROUP BY adalah error contains nonaggregated column. Error ini sering terjadi ketika ketika kita melakukan query GROUP BY tetapi kolom yang di SELECT tidak masuk ke dalam list GROUP BY.

Error Database MySQL tersebut lengkapnya adalah sebagai berikut:

SELECT list is not in GROUP BY clause and contains nonaggregated column... which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by - Invalid query:

Untuk mengatasi error tersebut ada dua macam cara. Anda bisa memilih salah satu cara yang paling mudah dan paling memungkinkan. Simak tutorial ini lebih lanjut.

Cara pertama adalah melakukan disable pada mode SQL: only_full_group_by

Untuk mengubah mode SQL, anda bisa masuk ke dalam console MySQL, kemudian jalankan command berikut:

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

ATAU

Buka PHPMyAdmin dari Laragon.

Pilih server localhost.

Klik tab Variables.

Cari baris sql_mode, lalu klik tombol Edit atau Edit value.

Hapus ONLY_FULL_GROUP_BY dari daftar nilai yang ada. Pastikan Anda menyertakan koma dengan benar di antara nilai-nilai lainnya.

Klik Save atau tombol serupa untuk menyimpan perubahan. 

Setelah itu, anda bisa menjalankan query lagi, seharusnya sudah tidak error.

Cara kedua Menonaktifkan secara Permanen

  • edit my.ini di folder mysql
  • tambahkan pada baris di bawah [mysqld]:
  • sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
  • edit laragon.ini
  • tambahkan:

[mysqld]

sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"

 Mulai ulang layanan Apache dan MySQL di Laragon agar perubahan diterapkan.


Kamis, 20 November 2025

Menghapus file session melalui Cron Job

 Kita dapat mengatur penghapusan file session secara terjadwal, misalnya setiap hari pada pukul 00.00 WIB, dan file yang dihapus harus sudah berumur 7 hari. Berikut cara menghapus file session melalui cron.

  1. Login ke cPanel.
  2. Klik menu Cron Jobs seperti screenshot berikut.
menu cron job cpanel
  1. Buat script untuk penghapusan otomatis seperti dibawah ini:

Gunakan script berikut ini untuk di copy ke command.

find /home/usercpanel/.cagefs/var/cpanel/php/sessions/* -name '*session*' -mtime +600 -exec ls -alh {} \; -delete

Keterangan:

  • Ganti “usercpanel” dengan nama pengguna cPanel yang sesuai.
  • mtime +600 : 600 artinya file yang sudah berumur lebih dari 600hari, bisa diganti dengan seminggu sekali dengan update “mtime +7”

Setelah dibuat, Anda akan melihat hasil seperti berikut :

Sampai tahap ini, proses menghapus file session di folder cagefs melalui cron job telah selesai.

dikutip dari: https://www.rumahweb.com/journal/cara-menghapus-file-session-di-folder-cagefs-cpanel/

Sabtu, 08 November 2025

Ganti File PDF OJS 3 tanpa merubah jumlah download di Table Content


  • Bila setelah update file PDF di galley biasanya angka download akan te reset
  • Cek di folder File OJS sesuai dengan nomor publish artikel


  • Lihat nama file di folder public. contoh: 1856


  • Cek nama file baru di folder proof. contoh: 2462

  • Buka tabel metrics. ketikkan perintah pada SQL 
UPDATE `metrics` SET `assoc_id`='2462' WHERE `assoc_id` = 1856;

  • Tampilan download akan kembali sesuai angka semula.


Sabtu, 26 Juli 2025

Kamis, 26 Desember 2024

Cara Install Project Aplikasi dengan Framework Laravel

Kita langsung saja dan untuk lebih mudahnya kita sarakan terlebih dahulu install : 

https://git-scm.com/downloads sebelum mengikuti panduan dibawah ini, hal ini khusus untuk yang tidak terbiasa menggunakan Command Prompt bawaan windows.

 Pastikan Terebih dahulu komputernya terkoneksi dengan internet... 

 1. Copy Paste Folder project ke htdocs

2. Masuk ke dalam folder Project kemudian klik kanan lalu pilih : Git Bash Here 

3. Tuliskan Perintah : composer install, jika sudah terinstall composer maka jalankan perintah : composer update. Perintah ini akan menginstal librari-librari atau dependencies yang digunakan Laravel. 

4.  Buat database dari phpmyadmin

Kemudian Setting database di file .env :

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=nama_database

DB_USERNAME=root

DB_PASSWORD=

 

5. Jalankan Perintah : php artisan key:generate

Perintah ini akan meng-generate key untuk dimasukkan ke APP_KEY di file .env

 6. Selanjutnya jalankan perintah : php artisan migrate

Perintah ini akan generate semua table yang dimiliki aplikasi, dan semua table akan masuk ke dalam database yang dibuat sebelumnya diatas.

 aplikasi yang sudah jadi tidak hanya menyediakan file-file migrations tapi juga file-file seeder untuk data table yang ada di folder database/seeds sehingga kita perlu memasukkannya ke dalam table dengan perintah : php artisan db:seed 

7. Terakhir, untuk membukanya di web browser, jalankan perintah :  php artisan serve

8. Lalu terakhir jalankan di browser http://localhost:8000

9. Selesai..

 

------------------------------------------------------------------------------------

Tambahan, Jika ada error seperti ini :

file_put_contents(C:\xampp\htdocs\xxx\storage\framework/session...

Solusi : Masuk ke folder : laravel/bootstrap/cache dan hapus file config.php. atau juga bisa rename menjadi config.php.old

Solusi OJS 3 kena SPAM LINK JUDI atau BOKEP

 cek pada file    rubah nama atau hapus folder CSS