Mohamad Handy Nugraha Mohamad Handy Nugraha - 2 months ago 11
JSON Question

My PHP code doesn't display data from MySQL using array push then json_encode

I am a beginner in

JSON
, my question is why does my code which displays description (description is
medium text
type) does not output anything in the browser? but the title with type:
varchar 100
outputs normally?

my code
init.php


<?php

$db_name = "webappdb";
$user = "root";
$pass = "";
$server_name = "localhost";

$connection = mysqli_connect($server_name, $user, $pass, $db_name);
if (!$connection) {
# code...
echo "Error connection". mysqli_error();
} else {
// success
}

?>


my code
iklanbaris.php
with displaying
titleIklanBaris
, it works..

<?php

require "init.php";
$sql_query1 = "SELECT * FROM iklan";
$res = mysqli_query($connection, $sql_query1);
$result = array();

while($row = mysqli_fetch_array($res)){
array_push($result,
array(
'titleIklanBaris'=>$row[1]

));
}

echo json_encode($result);

mysqli_close($connection);
?>


screenshot for the titleIklanBaris (it works display the data)

my code
iklanbaris.php
with displaying
descriptionIklanBaris
(does not show anything)

<?php

require "init.php";
$sql_query1 = "SELECT * FROM iklan";
$res = mysqli_query($connection, $sql_query1);
$result = array();

while($row = mysqli_fetch_array($res)){
array_push($result,
array(
'descriptionIklanBaris'=>$row[2]

));
}

echo json_encode($result);

mysqli_close($connection);
?>


screenshot for the descriptionIklanBaris, does not show the data

and the last one my code mySQL query for creating the data I'm using:

-- phpMyAdmin SQL Dump
-- version 4.1.12
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: Oct 02, 2016 at 12:48 PM
-- Server version: 5.6.16
-- PHP Version: 5.5.11

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `webappdb`
--

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

--
-- Table structure for table `iklan`
--

CREATE TABLE IF NOT EXISTS `iklan` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`titleIklanBaris` varchar(100) NOT NULL,
`descriptionIklanBaris` mediumtext NOT NULL,
`pengirimIklanBaris` varchar(30) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;



INSERT INTO `iklan` (`id`, `titleIklanBaris`, `descriptionIklanBaris`, `pengirimIklanBaris`) VALUES
(1, 'Sales Account Officer', 'Deskripsi Pekerjaan Melakukan kegiatan sales untuk mencapai target register baru layanan Jagoan Hosting & Beon. Persyaratan Full time Pria / Wanita Maksimal 30 Tahun Pengalaman di bidang sales minimal 1 tahun Aktif berkomunikasi dan memiliki networking yang luas Mengerti penggunaan aplikasi yang berhubungan dengan internet Lancar berbahasa inggris (aktif & pasif) Berpengalaman sales di bidang IT (diutamakan) Berpenampilan menarik (diutamakan) Penempatan Kota Malang Benefit : Gaji pokok + Bonus + Tunjangan kesehatan', 'Beon Intermedia Group PT'),
(2, 'Sales Account Officer', 'Deskripsi Pekerjaan Melakukan kegiatan sales untuk mencapai target register baru layanan Jagoan Hosting & Beon. Persyaratan Full time Pria / Wanita Maksimal 30 Tahun Pengalaman di bidang sales minimal 1 tahun Aktif berkomunikasi dan memiliki networking yang luas Mengerti penggunaan aplikasi yang berhubungan dengan internet Lancar berbahasa inggris (aktif & pasif) Berpengalaman sales di bidang IT (diutamakan) Berpenampilan menarik (diutamakan) Penempatan Kota Malang Benefit : Gaji pokok + Bonus + Tunjangan kesehatan', 'Beon Intermedia Group PT'),
(3, 'Sales Account Officer', 'Deskripsi Pekerjaan Melakukan kegiatan sales untuk mencapai target register baru layanan Jagoan Hosting & Beon. Persyaratan Full time Pria / Wanita Maksimal 30 Tahun Pengalaman di bidang sales minimal 1 tahun Aktif berkomunikasi dan memiliki networking yang luas Mengerti penggunaan aplikasi yang berhubungan dengan internet Lancar berbahasa inggris (aktif & pasif) Berpengalaman sales di bidang IT (diutamakan) Berpenampilan menarik (diutamakan) Penempatan Kota Malang Benefit : Gaji pokok + Bonus + Tunjangan kesehatan', 'Beon Intermedia Group PT'),
(4, 'Sales Account Officer', 'Deskripsi Pekerjaan Melakukan kegiatan sales untuk mencapai target register baru layanan Jagoan Hosting & Beon. Persyaratan Full time Pria / Wanita Maksimal 30 Tahun Pengalaman di bidang sales minimal 1 tahun Aktif berkomunikasi dan memiliki networking yang luas Mengerti penggunaan aplikasi yang berhubungan dengan internet Lancar berbahasa inggris (aktif & pasif) Berpengalaman sales di bidang IT (diutamakan) Berpenampilan menarik (diutamakan) Penempatan Kota Malang Benefit : Gaji pokok + Bonus + Tunjangan kesehatan', 'Beon Intermedia Group PT'),
(5, 'Business Consultant', 'GLI (Green Leaf Indonesia) Perusahaan Agribisnis yang sedang berkembang pesat sedang membutuhkan: Business Consultant (BC) Tanggung Jawab Pekerjaan : – Memperkenalkan program kerjasama tanam ke masyarakat – Memperkenalkan program penghijauan – Penempatan area kerja Malang dan sekitarnya Persyaratan Pengalaman : Pengalaman minimal 1 tahun di bidang salesmanship diutamakan Keahlian : – memiliki motivasi kerja tinggi, wawasan & jaringan luas, serta data base Kualifikasi : * Pria dan atau Wanita * Akhlaq baik dan jujur (ini yang paling utama) * Mau bekerja keras dan etos kerja tinggi * Diutamakan memiliki kendaraan dan SIM A/C * Pendidikan SMA sederajat atau lebih tinggi * Diutamakan domisili Malang, Jawa Timur ', 'Green Leaf Indonesia'),
(6, 'Business Consultant', 'GLI (Green Leaf Indonesia) Perusahaan Agribisnis yang sedang berkembang pesat sedang membutuhkan: Business Consultant (BC) Tanggung Jawab Pekerjaan : – Memperkenalkan program kerjasama tanam ke masyarakat – Memperkenalkan program penghijauan – Penempatan area kerja Malang dan sekitarnya Persyaratan Pengalaman : Pengalaman minimal 1 tahun di bidang salesmanship diutamakan Keahlian : – memiliki motivasi kerja tinggi, wawasan & jaringan luas, serta data base Kualifikasi : * Pria dan atau Wanita * Akhlaq baik dan jujur (ini yang paling utama) * Mau bekerja keras dan etos kerja tinggi * Diutamakan memiliki kendaraan dan SIM A/C * Pendidikan SMA sederajat atau lebih tinggi * Diutamakan domisili Malang, Jawa Timur ', 'Green Leaf Indonesia'),
(7, 'Business Consultant', 'GLI (Green Leaf Indonesia) Perusahaan Agribisnis yang sedang berkembang pesat sedang membutuhkan: Business Consultant (BC) Tanggung Jawab Pekerjaan : – Memperkenalkan program kerjasama tanam ke masyarakat – Memperkenalkan program penghijauan – Penempatan area kerja Malang dan sekitarnya Persyaratan Pengalaman : Pengalaman minimal 1 tahun di bidang salesmanship diutamakan Keahlian : – memiliki motivasi kerja tinggi, wawasan & jaringan luas, serta data base Kualifikasi : * Pria dan atau Wanita * Akhlaq baik dan jujur (ini yang paling utama) * Mau bekerja keras dan etos kerja tinggi * Diutamakan memiliki kendaraan dan SIM A/C * Pendidikan SMA sederajat atau lebih tinggi * Diutamakan domisili Malang, Jawa Timur ', 'Green Leaf Indonesia'),
(8, 'Business Consultant', 'GLI (Green Leaf Indonesia) Perusahaan Agribisnis yang sedang berkembang pesat sedang membutuhkan: Business Consultant (BC) Tanggung Jawab Pekerjaan : – Memperkenalkan program kerjasama tanam ke masyarakat – Memperkenalkan program penghijauan – Penempatan area kerja Malang dan sekitarnya Persyaratan Pengalaman : Pengalaman minimal 1 tahun di bidang salesmanship diutamakan Keahlian : – memiliki motivasi kerja tinggi, wawasan & jaringan luas, serta data base Kualifikasi : * Pria dan atau Wanita * Akhlaq baik dan jujur (ini yang paling utama) * Mau bekerja keras dan etos kerja tinggi * Diutamakan memiliki kendaraan dan SIM A/C * Pendidikan SMA sederajat atau lebih tinggi * Diutamakan domisili Malang, Jawa Timur ', 'Green Leaf Indonesia');


please help, why does not
iklanbaris.php
output anything when printing the content of
descriptionIklanBaris
?

Answer

I copied your code and had the same problem as you, then changed the content of descriptionIklanBaris of all rows to 'test' and it worked fine, means you have a problem in the content

so, all you have to do is converting it to utf8 before pushing it to the array :)

here's the working code:

<?php

require "init.php";
$sql_query1 = "SELECT * FROM iklan";
$res = mysqli_query($connection, $sql_query1);
$result = array();

while($row = mysqli_fetch_array($res)){

    array_push($result,
    array(
    'descriptionIklanBaris'=>utf8_encode($row[2])

    ));
}

echo json_encode($result);

mysqli_close($connection);
?>
Comments