Monday, April 27, 2020

Cara membuat koneksi SQLite3 dengan PHP dan contohnya

Anda pasti pernh menemukan satu file dengan berekstensi .db belakangan ini, itu adalah database SQLite. SQLite3 merupakan salah satu dari banyaknya database (DBMS) yang paling mudah digunakan karena berbasis file. Bentuk Query-nya pun masih sama dengan sintaks SQL dan bersifat relasional. Tidak hanya di Android, SQLite3 pun dapat digunakan oleh PHP.

Sebelum menggunakan SQLite, jika menggunakan localhost, maka tentunya harus ada konfigurasi Apache dalam XAMPP, antara lain:

Ubah dan uncomment atau hilangkan tanda komentar pada file php.ini dalam folder php/php.ini:


...
extension=php_pdo_sqlite.dll
...
extension=php_sqlite3.dll
...
[sqlite3]
sqlite3.extension_dir =
...


Setelah itu restart Apache dengan cara Stop dan Start kembali. Jika hal ini tidak digunakan, maka saat load class SQLite akan terdapat tampilan berikut:

Fatal error: Class 'SQLite3' not found in F:\xampp\htdocs\sqlite\open-sqlite3.php on line 3

Berikut adalah cara membuat dan mengakses sebuah database SQLite3 di PHP:


<?php
$db = new SQLite3('local.db');

if(!$db) {
  echo $db->lastErrorMsg();
} else {
  echo "Open database success...\n";
}

echo realpath("local.db");

echo "<br/><br/>";

// CARA 1
 $q = $db->query('SELECT *, COUNT(*) as count FROM face_info');

 while ($r = $q->fetchArray()) {
     //var_dump($r);
     $baris_kedua[] = $r;
 }
 // Gunakan count untuk mengetahui num_rows atau jumlah baris
 echo '<br/><br/>Jumlah baris tabel face_info adalah '.$q->fetchArray()[7].' atau '.$baris_kedua[0]['count'].'<br/>';


// CARA 2
$sql =<<<EOF
 SELECT * FROM face_info;
EOF;

 $query = $db->query($sql);
 if(!$query){
   echo $db->lastErrorMsg();
 } else {
     while ($row = $query->fetchArray()) {
         //print_r($row);
         $line_row[] = $row;
     }
 }
 // Menampilkan satu data ID
 echo '<br/><br/>Selanjutnya CARA 2, ID kedua adalah '.$line_row[1]['dwFaceId'].'<br/>';


// CARA 3, hanya mengambil satu baris data (single)
$sql1 =<<<EOF
      SELECT * FROM face_info WHERE dwFaceId="1";
EOF;

 $query1 = $db->querySingle($sql1, true);
 if(!$query1){
   echo $db->lastErrorMsg();  // Jaga-jaga kalau tidak ada data
 } else {
     //print_r($query1);
  // Menampilkan satu data ID
  echo '<br/><br/>Selanjutnya CARA 3, ID pertama adalah '.$query1['dwFaceId'].'<br/>';
 }

// Contoh mengambil gambar tipe blob dari data CARA 1
echo '<br/>CARA 1<br/><img src="data:image/png;base64,' . base64_encode( $baris_kedua[0]['FaceMB'] ) . '" width="100"/>';
// Contoh mengambil gambar tipe blob dari data CARA 3
echo '<br/>CARA 3<br/><img src="data:image/png;base64,' . base64_encode( $query1['FaceMB'] ) . '" width="100"/><br/>';

// Contoh simpan gambar ke dalam folder
echo "<br/><br/>Contoh simpan gambar ke dalam folder<br/>";
    $path = "./images/";
    // option 1
 $file = fopen($path.$baris_kedua[0][1].".jpeg","w") or die("Unable to open file!");
 echo "File name: ".$path.$baris_kedua[0][1].".jpeg";
 fwrite($file, base64_decode($baris_kedua[0]['FaceMB']));
 fclose($file);

 // option 2 (sederhana)
 // file_put_contents($path."/".$name, base64_decode($image));

?>


Jika menggunakan XAMPP, maka pastikan file .db masih dalam satu folder yang sama di htdocs. Apabila dijalankan pada browser dengan akses localhost, maka terlihat keterangan berikut:

Open database success...


Maka silahkan gunakan kode SQL seperti biasa untuk mengakses file local.db secara CRUD. Jika ingin mengaksesnya layaknya phpmyadmin silahkan gunakan DB Browser for SQLite. Contact us kalau ingin contoh file local.db

Sunday, April 26, 2020

Apa yang harus dilakukan saat upload web aplikasi pada Server dengan menggunakan CodeIgniter (CI)

Dalam membuat sebuah sistem informasi dibutuhkan skill dan logika yang mumpuni. Setidaknya memahami dalam setiap masalah yang ada seperti dalam aplikasi berbasis web dengan CodeIgniter. Pernahkah anda memiliki hasil tampilan seperti ini:




A PHP Error was encountered

Severity: Warning
Message: is_dir(): open_basedir restriction in effect. File(/opt/alt/php72/var/lib/php/session) is not within the allowed path(s): (/home/webiotid/:/tmp:/var/tmp:/opt/alt/php71/usr/share/pear/:/dev/urandom:/usr/local/lib/php/:/usr/local/php71/lib/php/)
Filename: drivers/Session_files_driver.php
Line Number: 134
Backtrace:
File: /home/webiotid/domains/webiot.id/public_html/link/application/controllers/Main.php
Line: 8
Function: __construct
File: /home/webiotid/domains/webiot.id/public_html/link/index.php
Line: 315
Function: require_once

A PHP Error was encountered

Severity: Warning
Message: mkdir(): open_basedir restriction in effect. File(/opt/alt/php72/var/lib/php/session) is not within the allowed path(s): (/home/webiotid/:/tmp:/var/tmp:/opt/alt/php71/usr/share/pear/:/dev/urandom:/usr/local/lib/php/:/usr/local/php71/lib/php/)
Filename: drivers/Session_files_driver.php
Line Number: 136
Backtrace:
File: /home/webiotid/domains/webiot.id/public_html/link/application/controllers/Main.php
Line: 8
Function: __construct
File: /home/webiotid/domains/webiot.id/public_html/link/index.php
Line: 315
Function: require_once

An uncaught Exception was encountered

Type: Exception
Message: Session: Configured save path '/opt/alt/php72/var/lib/php/session' is not a directory, doesn't exist or cannot be created.
Filename: /home/webiotid/domains/webiot.id/public_html/link/system/libraries/Session/drivers/Session_files_driver.php
Line Number: 138
Backtrace:
File: /home/webiotid/domains/webiot.id/public_html/link/application/controllers/Main.php
Line: 8
Function: __construct
File: /home/webiotid/domains/webiot.id/public_html/link/index.php
Line: 315
Function: require_once

Lalu bagaimana cara mengatasi masalah ini,

Bagaimana cara untuk membedakan CodeIgneter atau CI di locahost dan server atau hosting,

Jika ada masalah seperi di atas, maka lakukan perubahan Config pada Folder Application/config/config.php.
Jika menggunakan localhost, maka cari dan gunakan kode berikut:



$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
//$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;


Jika menggunakan server atau hosting, maka cari dan gunakan kode berikut:



$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
//$config['sess_save_path'] = NULL;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;




Masih banyak masalah lainnya. Seperti

A PHP Error was encountered

Severity: Runtime Notice
Message: Only variables should be passed by reference
Filename: controllers/Main.php
Line Number: 58
Backtrace:
File: F:\xampp\htdocs\yourApp\application\controllers\Main.php
Line: 58
Function: _error_handler
File: F:\xampp\htdocs\yourApp\index.php
Line: 315
Function: require_once

Fatal error: Maximum execution time of 30 seconds exceeded in F:\xampp\htdocs\yourApp\system\database\drivers\mysqli\mysqli_driver.php on line 305

A PHP Error was encountered

Severity: Error
Message: Maximum execution time of 30 seconds exceeded
Filename: mysqli/mysqli_driver.php
Line Number: 305
Backtrace:


Pemecahan masalahnya adalah sebagai berikut:



<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Main extends CI_Controller
{
 function __construct()
 {
     parent::__construct();
     setlocale(LC_TIME, "");
.................................................
         ini_set('max_execution_time', 0); 
         ini_set('memory_limit','2048M');
 }



Kode ini ditambahkan pada Controller yang ingin diberikan tambahan waktu upload file
         ini_set('max_execution_time', 0);
        ini_set('memory_limit','2048M');


Kesalahan lain:


Warning: Declaration of ActiveRecord\DateTime::setTime($hour, $minute, $second = NULL) should be compatible with DateTime::setTime($hour, $minute, $second = NULL, $microseconds = NULL) in F:\xampp7\htdocs\project\vendor\php-activerecord\php-activerecord\lib\DateTime.php on line 139

Pemecahan masalah:
ganti file dengan https://github.com/jpfuentes2/php-activerecord/blob/master/lib/DateTime.php
hilangkan  implements DateTimeInterface pada baris 36 yaitu:
class DateTime extends \DateTime

Warning: Class 'Former\Facades\Former' not found in F:\xampp7\htdocs\project\application\config\config.php on line 85

A PHP Error was encountered

Severity: 8192
Message: implode(): Passing glue string after array is deprecated. Swap the parameters
Filename: php-activerecord/ActiveRecord.php
Line Number: 41
Backtrace:
File: F:\xampp7\htdocs\project\vendor\php-activerecord\php-activerecord\ActiveRecord.php
Line: 41
Function: implode
File: F:\xampp7\htdocs\project\application\config\config.php
Line: 85
Function: class_alias
File: F:\xampp7\htdocs\project\index.php
Line: 283
Function: require_once

A PHP Error was encountered

Severity: 8192
Message: implode(): Passing glue string after array is deprecated. Swap the parameters
Filename: php-activerecord/ActiveRecord.php
Line Number: 41
Backtrace:
File: F:\xampp7\htdocs\project\vendor\php-activerecord\php-activerecord\ActiveRecord.php
Line: 41
Function: implode
File: F:\xampp7\htdocs\project\vendor\anahkiasen\former\src\Former\Facades\Former.php
Line: 10
Function: spl_autoload_call
File: F:\xampp7\htdocs\project\vendor\composer\ClassLoader.php
Line: 378
Function: include
File: F:\xampp7\htdocs\project\vendor\composer\ClassLoader.php
Line: 270
Function: Composer\Autoload\includeFile
File: F:\xampp7\htdocs\project\application\config\config.php
Line: 85
Function: class_alias
File: F:\xampp7\htdocs\project\index.php
Line: 283
Function: require_once

A PHP Error was encountered

Severity: 8192
Message: implode(): Passing glue string after array is deprecated. Swap the parameters
Filename: php-activerecord/ActiveRecord.php
Line Number: 41
Backtrace:
File: F:\xampp7\htdocs\project\vendor\php-activerecord\php-activerecord\ActiveRecord.php
Line: 41
Function: implode
File: F:\xampp7\htdocs\project\application\core\MY_Loader.php
Line: 56
Function: spl_autoload_call
File: F:\xampp7\htdocs\project\index.php
Line: 283
Function: require_once

A PHP Error was encountered

Severity: Warning
Message: Use of undefined constant MCRYPT_RIJNDAEL_192 - assumed 'MCRYPT_RIJNDAEL_192' (this will throw an Error in a future version of PHP)
Filename: core/MY_Loader.php
Line Number: 56
Backtrace:
File: F:\xampp7\htdocs\project\application\core\MY_Loader.php
Line: 56
Function: _exception_handler
File: F:\xampp7\htdocs\project\index.php
Line: 283
Function: require_once

A PHP Error was encountered

Severity: Warning
Message: Use of undefined constant MCRYPT_MODE_CFB - assumed 'MCRYPT_MODE_CFB' (this will throw an Error in a future version of PHP)
Filename: core/MY_Loader.php
Line Number: 56
Backtrace:
File: F:\xampp7\htdocs\project\application\core\MY_Loader.php
Line: 56
Function: _exception_handler
File: F:\xampp7\htdocs\project\index.php
Line: 283
Function: require_once

Fatal error: Uncaught Error: Call to undefined function PHPEncryptData\mcrypt_get_key_size() in F:\xampp7\htdocs\project\vendor\archwisp\php-encrypt-data\Simple.php:111 Stack trace: #0 F:\xampp7\htdocs\project\vendor\archwisp\php-encrypt-data\Simple.php(33): PHPEncryptData\Simple->_getKeySize() #1 F:\xampp7\htdocs\project\application\core\MY_Loader.php(58): PHPEncryptData\Simple->__construct('wpOxcuvJLA4Z4aX...', 'YeYcxVpY/ug6zwY...') #2 F:\xampp7\htdocs\project\system\core\Common.php(186): MY_Loader->__construct() #3 F:\xampp7\htdocs\project\system\core\Controller.php(67): load_class('Loader', 'core') #4 F:\xampp7\htdocs\project\system\core\CodeIgniter.php(357): CI_Controller->__construct() #5 F:\xampp7\htdocs\project\index.php(283): require_once('F:\\xampp7\\htdoc...') #6 {main} thrown in F:\xampp7\htdocs\project\vendor\archwisp\php-encrypt-data\Simple.php on line 111

A PHP Error was encountered

Severity: Warning
Message: Cannot modify header information - headers already sent by (output started at F:\xampp7\htdocs\project\system\core\Exceptions.php:211)
Filename: core/Common.php
Line Number: 551
Backtrace:

A PHP Error was encountered

Severity: Error
Message: Uncaught Error: Call to undefined function PHPEncryptData\mcrypt_get_key_size() in F:\xampp7\htdocs\project\vendor\archwisp\php-encrypt-data\Simple.php:111 Stack trace: #0 F:\xampp7\htdocs\project\vendor\archwisp\php-encrypt-data\Simple.php(33): PHPEncryptData\Simple->_getKeySize() #1 F:\xampp7\htdocs\project\application\core\MY_Loader.php(58): PHPEncryptData\Simple->__construct('wpOxcuvJLA4Z4aX...', 'YeYcxVpY/ug6zwY...') #2 F:\xampp7\htdocs\project\system\core\Common.php(186): MY_Loader->__construct() #3 F:\xampp7\htdocs\project\system\core\Controller.php(67): load_class('Loader', 'core') #4 F:\xampp7\htdocs\project\system\core\CodeIgniter.php(357): CI_Controller->__construct() #5 F:\xampp7\htdocs\project\index.php(283): require_once('F:\\xampp7\\htdoc...') #6 {main} thrown
Filename: php-encrypt-data/Simple.php
Line Number: 111
Backtrace:



set_userdata codeigniter not working
Codeigniter $this->session->set_userdata() not working

In CodeIgniter 3.x if you just upgraded to PHP version 7.x, go to system/libraries/Session/session.php at line 281 and replace or give comment for this line "//":

ini_set('session.name', $params['cookie_name']); 

change it with:

ini_set('session.id', $params['cookie_name']);



how to enable error log in codeigniter
/application/config/config.php

$config['log_threshold'] = 1



Monday, April 20, 2020

Instalasi dan konfigurasi Remote Desktop Connection pada Raspberry Pi

Selain komunikasi komputer client dengan Raspberry Pi menggunakan VNC Server. Bagaimana caranya komunikasi dengan bawaan Microsoft baik itu pada PC Desktop maupun dengan Android. Cara yang tepat yaitu dengan menggunakan Remote Desktop Connection. Biasanya PC sudah memilikinya secara langsung bawaan sistem, lalu bagaimana dengan Android dan iOS, ya, jawabannya yaitu https://play.google.com/store/apps/details?id=com.microsoft.rdc.android&hl=en dan https://apps.apple.com/us/app/microsoft-remote-desktop/id714464092 .



Lalu bagaimana proses konfigurasi pada Raspberry Pi, apakah sama dengan VNC Viewer pada artikel sebelumnya. Tentunya iya dibutuhkan konfigurasi, yaitu pada SSH. Lakukan proses instalasi xrdp pada Raspberry Pi dengan perintah berikut:

 

pi@pi:~ $ sudo apt-get install xrdp
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  alsa-base freetype2-doc gstreamer0.10-alsa gstreamer0.10-plugins-base
  libgstreamer-plugins-base0.10-0 libgstreamer0.10-0 libllvm8 libpng-tools
  libva-wayland2 libxfce4util-bin libxfce4util-common libxfce4util7
  libxfconf-0-2 pimixer point-rpi xfconf
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  libglu1-mesa ssl-cert x11-apps x11-session-utils xbitmaps xfonts-100dpi
  xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xorg
  xorg-docs-core xorgxrdp
Suggested packages:
  openssl-blacklist mesa-utils xorg-docs x11-xfs-utils guacamole
  xrdp-pulseaudio-installer
The following NEW packages will be installed:
  libglu1-mesa ssl-cert x11-apps x11-session-utils xbitmaps xfonts-100dpi
  xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils xorg
  xorg-docs-core xorgxrdp xrdp
0 upgraded, 15 newly installed, 0 to remove and 0 not upgraded.
Need to get 15.5 MB of archives.
After this operation, 23.1 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf libglu1-mesa armhf 9.0.0-2.1 [130 kB]
Get:2 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf ssl-cert all 1.0.39 [20.8 kB]
Get:3 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf x11-apps armhf 7.7+7 [541 kB]
Get:4 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf x11-session-utils armhf 7.7+3 [61.2 kB]
Get:5 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xbitmaps all 1.1.1-2 [32.1 kB]
Get:6 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-encodings all 1:1.0.4-2 [574 kB]
Get:7 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-utils armhf 1:7.7+6 [82.5 kB]
Get:8 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-100dpi all 1:1.0.4+nmu1 [3,822 kB]
Get:9 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-75dpi all 1:1.0.4+nmu1 [3,367 kB]
Get:10 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-base all 1:1.0.5 [5,897 kB]
Get:11 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xfonts-scalable all 1:1.0.3-1.1 [304 kB]
Get:12 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xorg-docs-core all 1:1.7.1-1.1 [84.0 kB]
Get:13 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xorg armhf 1:7.7+19+b8 [38.8 kB]
Get:14 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xorgxrdp armhf 1:0.2.9-1 [164 kB]
Get:15 http://kartolo.sby.datautama.net.id/raspbian/raspbian buster/main armhf xrdp armhf 0.9.9-1 [394 kB]
Fetched 15.5 MB in 11min 34s (22.4 kB/s)                                       
Preconfiguring packages ...
Selecting previously unselected package libglu1-mesa:armhf.
(Reading database ... 97347 files and directories currently installed.)
Preparing to unpack .../00-libglu1-mesa_9.0.0-2.1_armhf.deb ...
Unpacking libglu1-mesa:armhf (9.0.0-2.1) ...
Selecting previously unselected package ssl-cert.
Preparing to unpack .../01-ssl-cert_1.0.39_all.deb ...
Unpacking ssl-cert (1.0.39) ...
Selecting previously unselected package x11-apps.
Preparing to unpack .../02-x11-apps_7.7+7_armhf.deb ...
Unpacking x11-apps (7.7+7) ...
Selecting previously unselected package x11-session-utils.
Preparing to unpack .../03-x11-session-utils_7.7+3_armhf.deb ...
Unpacking x11-session-utils (7.7+3) ...
Selecting previously unselected package xbitmaps.
Preparing to unpack .../04-xbitmaps_1.1.1-2_all.deb ...
Unpacking xbitmaps (1.1.1-2) ...
Selecting previously unselected package xfonts-encodings.
Preparing to unpack .../05-xfonts-encodings_1%3a1.0.4-2_all.deb ...
Unpacking xfonts-encodings (1:1.0.4-2) ...
Selecting previously unselected package xfonts-utils.
Preparing to unpack .../06-xfonts-utils_1%3a7.7+6_armhf.deb ...
Unpacking xfonts-utils (1:7.7+6) ...
Selecting previously unselected package xfonts-100dpi.
Preparing to unpack .../07-xfonts-100dpi_1%3a1.0.4+nmu1_all.deb ...
Unpacking xfonts-100dpi (1:1.0.4+nmu1) ...
Selecting previously unselected package xfonts-75dpi.
Preparing to unpack .../08-xfonts-75dpi_1%3a1.0.4+nmu1_all.deb ...
Unpacking xfonts-75dpi (1:1.0.4+nmu1) ...
Selecting previously unselected package xfonts-base.
Preparing to unpack .../09-xfonts-base_1%3a1.0.5_all.deb ...
Unpacking xfonts-base (1:1.0.5) ...
Selecting previously unselected package xfonts-scalable.
Preparing to unpack .../10-xfonts-scalable_1%3a1.0.3-1.1_all.deb ...
Unpacking xfonts-scalable (1:1.0.3-1.1) ...
Selecting previously unselected package xorg-docs-core.
Preparing to unpack .../11-xorg-docs-core_1%3a1.7.1-1.1_all.deb ...
Unpacking xorg-docs-core (1:1.7.1-1.1) ...
Selecting previously unselected package xorg.
Preparing to unpack .../12-xorg_1%3a7.7+19+b8_armhf.deb ...
Unpacking xorg (1:7.7+19+b8) ...
Selecting previously unselected package xorgxrdp.
Preparing to unpack .../13-xorgxrdp_1%3a0.2.9-1_armhf.deb ...
Unpacking xorgxrdp (1:0.2.9-1) ...
Selecting previously unselected package xrdp.
Preparing to unpack .../14-xrdp_0.9.9-1_armhf.deb ...
Unpacking xrdp (0.9.9-1) ...
Setting up x11-apps (7.7+7) ...
Setting up xorg-docs-core (1:1.7.1-1.1) ...
Setting up ssl-cert (1.0.39) ...
Setting up xfonts-encodings (1:1.0.4-2) ...
Setting up xorgxrdp (1:0.2.9-1) ...
Setting up x11-session-utils (7.7+3) ...
Setting up libglu1-mesa:armhf (9.0.0-2.1) ...
Setting up xbitmaps (1.1.1-2) ...
Setting up xrdp (0.9.9-1) ...

Generating 2048 bit rsa key...

ssl_gen_key_xrdp1 ok

saving to /etc/xrdp/rsakeys.ini

Created symlink /etc/systemd/system/multi-user.target.wants/xrdp-sesman.service → /lib/systemd/system/xrdp-sesman.service.
Created symlink /etc/systemd/system/multi-user.target.wants/xrdp.service → /lib/systemd/system/xrdp.service.
Setting up xfonts-utils (1:7.7+6) ...
Setting up xfonts-base (1:1.0.5) ...
Setting up xfonts-75dpi (1:1.0.4+nmu1) ...
Setting up xfonts-scalable (1:1.0.3-1.1) ...
Setting up xfonts-100dpi (1:1.0.4+nmu1) ...
Setting up xorg (1:7.7+19+b8) ...
Processing triggers for libc-bin (2.28-10+rpi1) ...
Processing triggers for systemd (241-7~deb10u3+rpi1) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for fontconfig (2.13.1-2) ...
pi@pi:~ $

 

Setelah itu lakukan koneksi seperti biasa dengan menggunakan IP dari Raspberry Pi.

Permasalahan lain dalam Raspberry, kami rangkum di bawah ini:
Raspberry Pi no sound on chromium but it still loading on VLC or the other application (hdmi / analog / headphone / bluetooth)
-> install this
sudo apt-get install chromium-codecs-ffmpeg-extra