Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Ambil data dari mysql menjadi file json dengan javascript
Gan mau nanya klo cara ambil data dari db mysql terus dikonversi jadi file json sama javascript gimana yah?
Nanti file jsonnya bakal di request gitu buat di tampilin sama reactjs
Minta bantuan nya gan saya masih newbie hehe
1 Jawaban:
Jawaban Terpilih
<div>1. Ambil data dari database dan jadikan array<br>2, gunakan fungsi json_encode yang ada di php, contoh saya ingin mengambil data user yang berada di file user.php dan filenya saya akses melalui url http://localhost/user.php sehingga sumber code nya akan terlihat seperti ini</div><pre><?php
$con = mysqli_connect('localhost', 'root', '', 'db_name'); $sql = mysqli_query($con, "SELECT * FROM user"); $data = []; while($res = mysqli_fetch_object($sql)){ // memasukan data ke variable $data array_push($data, ["username" => $res->username, "password" => $res->password]); } // mengubah array menjadi json echo json_encode($data);
?></pre><div>3. untuk menggunakannya dengan vanila javascript pakai ajax aja contohnya seperti ini</div><pre>const xhr = new XMLHttpRequest() xhr.onreadystateChange = function(){ if(xhr.readyState === 4 && xhr.status === 200){ console.log(xhr.responseText) } } xhr.open('GET', 'http://localhost/user.php', true) xhr.send()</pre><div>dan jika ingin menggunakannya di reactjs sumber codenya seperti ini</div><pre>import React, {Component} from 'react' export default class Home extends Component{ state = { data : [] } async componentDidMount(){ const req = await fetch('http://localhost/user.php') const res = await req.json() this.setstate({data: res}) console.log(this.state.data) } return( render(){..} )<br>}</pre><div><br></div><div>4. liat di console browser ( google chrome ) ctrl + shift + i, nanti data jsonnya bakalan keliatan<br>5. biasanya browser akan ngeblock request yang seperti ini dan akan muncul error CORS (cross origin resource sharing ) karena meminta data dari sumber yang berbeda misal untuk front end aksesnya dari url www.test.com dan data json tadi ada di url www.data.com hal ini secara default tidak dizinkan oleh browser, solusinya kita tambahkan header ini di file untuk ambil data tadi, simpan di paling atas </div><pre>header("Access-Control-Allow-Origin: *");</pre><div>jika cara tersebut tidak berhasil saya sarankan install extension cors<br><br>hanya itu saja yang perlu dilakukan 🙌 😎</div>
Tanggapan
mantep gan thanks yah hehe