sejujurnya konten seperti ini harus dilihat lebih banyak orang karena sangat bermanfaat Terima kasih om sudah buat konten seperti ini, penjelasanya runut & mudah dicerna 🤘🏻
permisi pak mohon bantuannya, saya mendapatkan error seperti ini Error: Cannot find module 'C:\Users\W I N D O W S\Desktop\fullstack\backend\app' at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15) at Module._load (node:internal/modules/cjs/loader:922:27) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:23:47 { code: 'MODULE_NOT_FOUND', requireStack: [] } itu kenapa ya pak? dan bagaimana? terimakasih banyak
@@CoderMediax sudah tidak error pak terimakasihh.. tapi saat di web melakukan update product tanpa upload file baru, url image nya menjadi undefined, padahal saat di postman tidak ada error
izin bertanya kak, apabila setelah membuat tabel product yang mengarah ke DB dan jika ingin menambahkan tabel baru yakni user apakah bileh di 1 file yang sama kak? apakah akan terjadi error bila di run karena tabel product sudah terbuat sebelumnya
kak mau tanya saat import { Sequelize } from "sequelize"; const {DataTypes} = Sequelize; bedanya apa ya dengan kita coba panggil seperti berikut const { Sequelize, DataTypes } = require('sequelize'); apakah ada pengaruhnya atau hanya perbedaan penulisan syntax nya aja yaa?
from sequelize itu module yang dipake,import {sequelize} itu fungsi yang diambil dari module tersebut, {DataTypes} itu juga fungsi/variabel yang ada di sequelize dan ini berbasis Module JS, klo yang require itu pake Common JS
Mau tanya bang, kalau nanti di sudah di hosting misal, jika kita upload image ke yang sudah di hosting maka datanya masuk ke server remote, nah jika lagi maintance kode di local trus push ke repo lagi, apa itu nanti bakal meniban image yang di remote sebelumnya
Image gak ke display bang, setelah ku search di localhost:5000/images/....img ternyata cannot get, solusinya gimana bang? Headers multipart sudah dihapus btw
mau nanya, kalau mau di deploy yang enak nya pake apa ya bang ??? ini kan ada Image, berarti butuh penyimpanan juga kan ???? mohon solusinya.... mau belajar deploy...
Bang ini kalo saya tambahkan fitur login and register dengan Credentials dari axios kok error ya???, permasalahannya dimana tuh kalo gitu bang, mohon bantu 🫡🫡
terimakasih bang jd ada pencerahan sedikit... sukses selalu bang fikri.. mungkin bisa ditambahkan bang,,bagaimana penggunaan base64.. jd images disimpan di database(plus minus nya apa) apa ditambahkan tentang orm dari sequelize nya,,baca dokumentasi agak bingung tentang many to many
convert image ke base64 dan simpan ke database bagus untuk image < 500kb, jika lebih dari itu maka tidak ada type data apapun di mysql yang mampu menampungnya.
import express from "express"; import fileUpload from "express-fileupload"; // cors agar api kita bisa diupload diluar domain import cors from "cors"; format import ini sama kah dengan pemangilan mengunakan format require bg???
Maaf bang mau tanya, saya dapat error gini Cannot read properties of undefined (reading 'file'). pas dicek di backend udah benar, saya udah coba cari tapi masih tetap error kaya gitu
pak mau nanya pak, kalo mau multiple upload itu bagaimana ya pak? buat nya dengan menggunakan tutorial seperti bapak dan menggunakan bahasa yang sama. terimakasih
halo saya dapat error "cannot read property of undefined (reading file). ini kenapa ya? sudah coba debugging dan cari cara lain dan juga samaka dengan code backendnya tapi masi gajadi. mohon bantuannya
Halo mas mau tanya, pada saat bagian tambah data kok saya terdapat error ya, errornya seperti ini "TypeError: Cannot read property 'file' of undefined". Mohon solusinya mas🙏
sebelumnya mohon maaf bang , beneran nanya, fungsinya nama file gambar di inputkan juga di database apa ya bang? soalnya senangkapnya saya yang dikonsum sama frontend itu urlnya bang, makasihhh✌
Saya mengerti yang di konsum hanya url, tapi terkadang kita membutuhkan file name di frontend. Misalnya saya tidak selalu ingin mengetikkan url di setiap konsum API termasuk image dan saya ingin membuat prefix BackendUrl = 'http:namadomain[dot]com' Jadi setiap saya ingin konsum API tinggal: BackendUrl/namaEndPoint Untuk konsum image tinggal: BackendUrl/images/fileName Itu berlaku secara global. (Itu di sisi frontend) Sementara di sisi backend, menyimpan fileName ke database juga bermanfaat untuk kebutuhan management image seperti: update dan delete image di directory public/images (seperti pada video ini).
sy masih dpt error pada saat proses Save Product bang ... Failed to load resource: the server responded with a status of 500 (Internal Server Error). Request failed with status code 500. kira-kira sy kurang dimananya lg yah ? codingan udah sy samain dengan source code yg ada ditutorial ini...mohon petunjuknya bang ...
itu artinya ada error di sisi backend, coba perhatikan lagi lebih detail! semua yang mengalami error selalu mengaku kodenya sama, padahal setelah di teliti lebih jauh ternyata berbeda. kadang pake kutip, seharusnya backtick dan masih banyak lagi. Coba perhatikan lagi di line berapa errornya!
@@mariopangalo9141 axios versi terbaru tidak perlu menggunakan headers multipart. Hapus kode ini di file AddProduct.js: headers: { "Content-type": "multipart/form-data", },
@@CoderMediax trima kasih atas responsenya bang. headernya sudah dihilangkan, app-nya berjalan dengan normal. POST, PATCH, DELETE berjalan lancar. Skali lagi terima kasih atas bantuannya bang, sukses terus & sehat selalu bang ... sangat membantu bagi yang baru belajar mern dengan mysql ..
Update dengan image atau tanpa image? Untuk update tanpa image, memang ada sedikit kesalahan. Ganti: fileName = Product.image; Menjadi: fileName = product.image; di backendnya pada function update!
ijin bertanya bang misalnya kita memilki lebih dari satu input misalnya saya mau menambahkan deskripsi singkat , saya harus membuat lagi useState baru untuk save ? apa bisa gunakan 1 useState saja?
kenapa ya bang "Cannot read properties of undefined (reading 'file')" , pas dipost man lancar tapi pas di front end nya malah error gitu pas mau upload
terima kasih banyak bang tutornya seperti biasa sangat mudah dipahami, btw bang bisa bantu di modul fs nodenya, di saya kena error "eperm: operation not permitted, unlink", saya cari tau di stackoverflow karena user windows yang pake vscode nya ga dapet akses trus bikin npm nya gagal bypass, saya juga udah coba hapus cache npm trus install ulang package npm keseluruhan masih tetep gabisa bang, barangkali pernah nemu solusi buat ini .. makasih banyak bang fikri
@@CoderMediax sudah bang, ooow tapi ini kayanya gua paham bang, ato salah paham juga gatau wkwk, karena empty string, unlinkSync ngira kalo gaada file spesifik sementara unlinkSync nya sendiri fokusnya hapus file spesifik, jadi kalo empty string itu berubah jadi direktrory ato folder, unlinkSync gabisa eksekusi codingannya karena memang ga dikasi izin buat itu 🧐 oke bang thanks udah balesin
@@CoderMediax mas kalau gak negerepotin, bisa minta no wa nya. saya sangat tertarik dengan node js dan ekpress. mungkin saya akan banyak tanya soal ini?
@@CoderMediax itulah maksud saya, saya juga menggunakan req.files.file, saya mencoba dari postman untuk sisi backend, itu tidak masalah program berjalan dengan baik, tapi saat saya menjalankan menggunakan sisi frontend, selalu files nya tidak bisa dibaca, jika saya menghilangkan tipe filenya dan cuma tipe input text maka program berjalan seperti biasa, hanya saat menggunakan upload files, dari sisi frontend tidak bisa terbaca.
Kenapa url tidak terdefinisi ya ketika yg di update hanya namenya aja tanpa gambar, tp url jadi tidak terbaca, padahal udah pas saya liat kodingannya, tau kalau dari postman tidak masalah sisi backendnya, ketika edit dari frontendnya yg bermasalah. mohon jawaban bg.
Ganti: fileName = Product.image; Menjadi: fileName = product.image; di backendnya pada function update! Coba cek di source codenya untuk lebih jelasnya!
hallo mas, mau bertanya ketika saya hit api saveProduct menggunakan REST Client itu berhasil, namun ketika menggunakan postman body sama files nya kosong, udah coba search juga masih stuck..
coba perhatikan lebih detail lagi method dan endpoint serta key-nya persis sama dengan di codingnya! Jangan menggunakan huruf kapital sedikitpun, pastikan semuanya key dalam lowercase. dan pastikan juga menggunakan form-data.
izin pak, saya di const fileSize = file.data.length, terdapat error katanya (Cannot read properties of undefined (reading 'data')), gimana ya pak? Terimakasih
bang di saya kok ada error ini ya di terminal const file = req.files.file; TypeError: Cannot read properties of undefined (reading 'file') dan pas saya console.log req.file nya kosong/undefined Mohon Bantuannnya
Update dengan image atau tanpa image? Untuk update tanpa image, memang ada sedikit kesalahan. Ganti: fileName = Product.image; Menjadi: fileName = product.image; di backendnya pada function update!
@@CoderMediax issuenya, ketika gambar sudah di trima di folder local dan di database, ktika sudah di update di database tidak masuk name Image dan URL image, tapi gambar sudah masuk ke folder local, itu karna apa ya bang
bang mau tanya, ketika kita upload dengan gambar yang sama. kok enggak ngeduplicate ya? cara biar ngeduplicate gambar yang sama gimana yah? soalnya ketika di deleted jika ada gambar yang sama, akan error
pada file name tambahkan timestamp atau unik id! Sehingga tidak ada name file yang sama, meskipun file yang di upload sama. Dengan demikian akan bisa upload duplikat file.
@@CoderMediax makasih bang. Saya nyari sana sini yang bisa multi image kayak array object, kebanyakan pakainya mongodb, pakai sequelize mysql gak ada tutorialnya -_-. ini case sangat penting banget
Permisi mass, mau tanya jadi gini ketika saya upload 2 product yang berbeda dengan gambar yang sama itu di sisi backend kan gambarnya disimpan di dalam folder public ya mass.. dan seharusnya itu gambar yang kesimpan ada 2 tapi ini yang kesimpan cuma ada 1, karena gambar yang sama dan nama url di database juga jadi sama, mungkin ini salah satu permasalahan saya ketika saya coba hapus salah satu product karena gambar di directory juga terhapus, jadi mempengaruhi product yang belum di hapus
apa saya bisa menyelesaikan masalah ini dengan menambahkan waktu upload di url gambarnya mass? mohon bantuannya solusinya ya mass, karena saya juga baru mulai belajar NodeJs dan ReactJS terima kasih 🙏🙏
@@arifwidagdo2617 Ada dua opsi: 1. Tambahkan time uploadnya setelah md5. 2. Tambahkan id uploadnya setelah md5. Silahkan pilih salah satu dari opsi itu!
permisi kak, kenapa kok di menit 57:55 kok gak muncul di bworser ya? padahal saya sudah mengikuti tutorial dan langkah" dengan benar dari awal, mohon bantuannya terimakasih sebelumnya
@@CoderMediax baik kak terimakasih banyak, kalau saat edit name aja tanpa mengganti gambar trus melakukan update gambar langusng tidak ditemuan itu salah dmna ya, mohon bantuannya terima kasih sebelumnya
@@adityadmss_ Ganti: fileName = Product.image; Menjadi: fileName = product.image; di backendnya pada function update! Coba cek di source codenya untuk lebih jelasnya!
Terima kasih bro. Walaupun bahasa Indonesia, saya faham. Sangat membantu. Subscribed.
Tp kamu jg bisa bahasa indonesia
@@hildanmalaya mohon maaf hanya masukan mngkn bsa di kasih tambahan utk subtitle.,
Terima kasih om sudah buat konten , sukses sllu
@@BayuHardian-ob3we tp bang fikri yg buat konten, bukan saya😅
sejujurnya konten seperti ini harus dilihat lebih banyak orang karena sangat bermanfaat
Terima kasih om sudah buat konten seperti ini, penjelasanya runut & mudah dicerna 🤘🏻
Sama-sama
@@CoderMediax kag kalau mau validasi file image yang d upload berdasarkan lebar dan tinggi gimana?
@@CoderMediaxkenapa saya selalu error' di bagian post di postman. Sudah 3x saya ulang dari awal selalu saja error disitunya
Best channel ever!
Bang mau nanya, pas nampilin image di form add/edit di local gaada masalah. Pas coba di hosting muncul error Content Secure Policy. Ada kah solusinya?
permisi pak mohon bantuannya, saya mendapatkan error seperti ini
Error: Cannot find module 'C:\Users\W I N D O W S\Desktop\fullstack\backend\app'
at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
at Module._load (node:internal/modules/cjs/loader:922:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
itu kenapa ya pak? dan bagaimana? terimakasih banyak
Sepertinya terdapat error pada npm, coba install node.js versi stable terbaru!
@@CoderMediax sudah tidak error pak terimakasihh.. tapi saat di web melakukan update product tanpa upload file baru, url image nya menjadi undefined, padahal saat di postman tidak ada error
thanks om ilmunya 👍
izin bertanya kak, apabila setelah membuat tabel product yang mengarah ke DB dan jika ingin menambahkan tabel baru yakni user apakah bileh di 1 file yang sama kak? apakah akan terjadi error bila di run karena tabel product sudah terbuat sebelumnya
Gw eror pada saat masuk ke post man untuk menambah kan file nya di body
Apa pesan errornya?
Sya ada kesalahan di : onst fileSize=file.data.length;
^
TypeError: Cannot read properties of undefined (reading 'data')
Bang kalo misalkan kita tambahin category, terus dia penempatan nya dimana ya? apa harus buat file baru lagi yang isinya category aja?
terimakasih bang...lanjut Tutorial Lengkap Angular JS Untuk Pemula bang.
Mau tanya bang, pernah buat jurnal tentang express nodejs dan mysql ga bang?
bang ini savenya di front end pas di klik
kok gak jalan yah? tapi di postman work'
Kak bikinin yang Next js 13 buat simpat file ke local dong kak
Mohon setiap script yang abg tulis di jelaskan fungsi untuk apa biar paham bg. terima kasih.
kak mau tanya saat
import { Sequelize } from "sequelize";
const {DataTypes} = Sequelize;
bedanya apa ya dengan kita coba panggil seperti berikut
const { Sequelize, DataTypes } = require('sequelize');
apakah ada pengaruhnya atau hanya perbedaan penulisan syntax nya aja yaa?
berarti kita mendeklarasikan 2 variable dengan nilai Sequelizenya
from sequelize itu module yang dipake,import {sequelize} itu fungsi yang diambil dari module tersebut, {DataTypes} itu juga fungsi/variabel yang ada di sequelize dan ini berbasis Module JS, klo yang require
itu pake Common JS
Mau tanya bang, kalau nanti di sudah di hosting misal, jika kita upload image ke yang sudah di hosting maka datanya masuk ke server remote, nah jika lagi maintance kode di local trus push ke repo lagi, apa itu nanti bakal meniban image yang di remote sebelumnya
Up
Mantul mass.. jika mass bisa, buat video tutorial CRUD data mapping mass, point, line & polygon bisa guna MySQL juga mass..
MASSS POSTMAN NYA GABISA
mas kok saya req.files.file undefined ya?
Image gak ke display bang, setelah ku search di localhost:5000/images/....img ternyata cannot get, solusinya gimana bang? Headers multipart sudah dihapus btw
sesat mmeq, kenapa nama models nya sat
mau nanya, kalau mau di deploy yang enak nya pake apa ya bang ??? ini kan ada Image, berarti butuh penyimpanan juga kan ???? mohon solusinya.... mau belajar deploy...
Kak kalau tambah field lainnya gimana pas input di postman nya??
mas ini realtime database ga ya ?
Bang ini kalo saya tambahkan fitur login and register dengan Credentials dari axios kok error ya???, permasalahannya dimana tuh kalo gitu bang, mohon bantu 🫡🫡
kok saya error module not found ya di bagian model dan controller ny di terminal tertulis langsung di baris 1 controller
Wahh mantapp, terima kasih ilmunya mas 🙏
Sama-sama mas
terbaik 🙏🙏
Terimakasih atas ilmunya.
Sama-sama
Keren bro tutorialnya. Semoga rezekinya selalu lancar ya!!
terimakasih bang jd ada pencerahan sedikit...
sukses selalu bang fikri..
mungkin bisa ditambahkan bang,,bagaimana penggunaan base64..
jd images disimpan di database(plus minus nya apa)
apa ditambahkan tentang orm dari sequelize nya,,baca dokumentasi agak bingung tentang many to many
convert image ke base64 dan simpan ke database bagus untuk image < 500kb, jika lebih dari itu maka tidak ada type data apapun di mysql yang mampu menampungnya.
pak boleh minta tutorial cara menambah field di mysql lewat nodejsnya bukan dari tabel mysqlnya🙏🙏
makasih bro tutorialnya
smoga lancar ngontennya
Mantap bg
ane ada error gini bang :
failed to load response data no data found for resource with given identifier
import express from "express";
import fileUpload from "express-fileupload";
// cors agar api kita bisa diupload diluar domain
import cors from "cors"; format import ini sama kah dengan pemangilan mengunakan format require bg???
Yap, benar sekali
delete product di front endnya kok gabisa ya
Keren bang, sering2 bikin konten backend bang 👍🏼
Diusahakan!
@@CoderMediax siap bang, ditunggu 👍🏼
This video is really helpfull for me, Thanks Alot Brother, I don't know your language but still its helpfull for me
Wajib subcreb sih ini
Maaf bang mau tanya, saya dapat error gini Cannot read properties of undefined (reading 'file'). pas dicek di backend udah benar, saya udah coba cari tapi masih tetap error kaya gitu
Kalo di consol error 505
Padahal pas nyoba nambah data di postman bisa
error yg bagian sini bang, const file = req.files.file;
Pada axios versi terbaru, tidak perlu lagi form/multipart.
Hapus kode berikut:
headers: {
"Content-type": "multipart/form-data",
},
@@CoderMediax Terima kasih banyak bang, udah bisa
bang cara migrasi databasenya agar dapat pindah ke database laptop teman gimana ya karna saya ini buat project 🙏
terima kasih tutorialnya pak, sangat bermanfaat dan mudah dipahami. Apa bapak bisa bikin tutor golang, kah?
Hadir Bang, Terimakasih Contentnya Langsung Otw Praktekin :)
Bang knp g pake multer
saya telah coba multer ribet, terlalu banyak boilerplate code
Terimakasih content nya bang request dong bang tambahin fitur roles nya berdasarkan admin dan user 🙏🙏
Mantap
pak mau nanya pak, kalo mau multiple upload itu bagaimana ya pak? buat nya dengan menggunakan tutorial seperti bapak dan menggunakan bahasa yang sama. terimakasih
bang coba tambahin deskripsi barang, harga jual, dan harga beli gmna
Pahami dulu konsep perancangan database, karena itu kuncinya!
Buat turorial cara upload fullstack ke github bang
Perimisi bang izin tanya, Kok di saya req.get('host') dapetnya undefined ya ?
coba pake: req.hostname
tutor php dasar dong bang.
katanya setelah node.js ada dino.js kadal.js kura-kura.js apalah seterusnya🤣.
kurang minat saya.
penjelasan abang mantap👍
Wkwkwk, mana ada.
Terima kashihhh ilmunya mas
halo saya dapat error "cannot read property of undefined (reading file). ini kenapa ya? sudah coba debugging dan cari cara lain dan juga samaka dengan code backendnya tapi masi gajadi. mohon bantuannya
coba pake postman terlebih dahulu!
Sir bring using mern i dont knw about mysql
kereennn .. update content terus bang 🔥
Halo mas mau tanya, pada saat bagian tambah data kok saya terdapat error ya, errornya seperti ini "TypeError: Cannot read property 'file' of undefined". Mohon solusinya mas🙏
sama bang, udh solved belum?
ini di header fungsi saveProduct nya ganti yang tadinya "Content-type" t nya kecil jadi "Content-Type" T nya besar
Sudah jalan tapi tampilan webnya berantakan itu kenapa ya?😅
css-nya udah jalan?
buat studi kasus dong om
Banggg bikin di versi next js 13 yang pake app directory dong please,
Udah, cek video yang terbaru di channel ini!
@@CoderMediax ga ada bang yang upload image ke local directorynya
Udah nyoba malah muncul error fs
@@yoayopersibbandung2685 coba import fs from "fs/promises"
@@CoderMediax tetep bang, kalau boleh minta tolong buatkan tutornya bang
Kalau untuk upload file pdf atau word gitu pake express fileupload atau multer bisa gk ya bang ? soalnya di dokumentasinya gk ada
tentu saja bisa.
@@CoderMediax baik bang, terima kasih banyak
sebelumnya mohon maaf bang , beneran nanya, fungsinya nama file gambar di inputkan juga di database apa ya bang? soalnya senangkapnya saya yang dikonsum sama frontend itu urlnya bang, makasihhh✌
Saya mengerti yang di konsum hanya url, tapi terkadang kita membutuhkan file name di frontend.
Misalnya saya tidak selalu ingin mengetikkan url di setiap konsum API termasuk image dan saya ingin membuat prefix BackendUrl = 'http:namadomain[dot]com'
Jadi setiap saya ingin konsum API tinggal: BackendUrl/namaEndPoint
Untuk konsum image tinggal: BackendUrl/images/fileName
Itu berlaku secara global. (Itu di sisi frontend)
Sementara di sisi backend, menyimpan fileName ke database juga bermanfaat untuk kebutuhan management image seperti: update dan delete image di directory public/images (seperti pada video ini).
@@CoderMediax ohhh iya bang, pahammm sekrang bang, terimakasih bang
sy masih dpt error pada saat proses Save Product bang ... Failed to load resource: the server responded with a status of 500 (Internal Server Error). Request failed with status code 500. kira-kira sy kurang dimananya lg yah ? codingan udah sy samain dengan source code yg ada ditutorial ini...mohon petunjuknya bang ...
itu artinya ada error di sisi backend, coba perhatikan lagi lebih detail!
semua yang mengalami error selalu mengaku kodenya sama, padahal setelah di teliti lebih jauh ternyata berbeda. kadang pake kutip, seharusnya backtick dan masih banyak lagi.
Coba perhatikan lagi di line berapa errornya!
@@CoderMediax
TypeError: Cannot read properties of undefined (reading 'file')
at saveProduct (file:///D:/fullstack/backend/controllers/ProductController.js:30:28)
@@mariopangalo9141 axios versi terbaru tidak perlu menggunakan headers multipart.
Hapus kode ini di file AddProduct.js:
headers: {
"Content-type": "multipart/form-data",
},
@@CoderMediax trima kasih atas responsenya bang.
headernya sudah dihilangkan, app-nya berjalan dengan normal. POST, PATCH, DELETE berjalan lancar.
Skali lagi terima kasih atas bantuannya bang, sukses terus & sehat selalu bang ...
sangat membantu bagi yang baru belajar mern dengan mysql ..
Om aku pemula, cocok tidak langsung sperti tutorial, atau cari video dasarnya dulu?
Jika merasa bisa dipahami silahkan, tapi jika masih bingung ada baiknya belajar dasar dulu.
Tapi sebenarnya di video ini juga masih dasar.
@@CoderMediax terima kasih pak sudah menjawab
wahh keren bang, langsung dibuatin. semangat ngonten bang🤩
Siap
Izin bertanya pak, ketika update nama saja gambarnya hilang itu kenapa ya? Terima kasih
Update dengan image atau tanpa image?
Untuk update tanpa image, memang ada sedikit kesalahan.
Ganti:
fileName = Product.image;
Menjadi:
fileName = product.image;
di backendnya pada function update!
@@CoderMediax Terima kasih pak sudah bisa 👍
Bang kalo crud cuman di admin page, terus kalo di frontnya display nama sama gambar doang gimana bang?
Bikin itu sebagai admin page, kemudian bikin page untuk halaman publicnya yang hanya menampilkan name dan image!
@@CoderMediax oh iya bang, aku juga baru nemu konsepnya, makansih bang👍
Bang kalo ditambahi filter category, misal parfum pria sama parfum wanita gitu😅
sequelize pake migration apakah wajib bang ?
Gak perlu, bisa pake sync aja!
Mantap
Bang ajarin ttg redux dong implementasi ke crud
Ini untuk tutorial redux lengkap dengan CRUD: ruclips.net/video/S_zkP5prhaM/видео.html
Next vidio pake express generator aja, biar durasi agak lebih pendek
Makasih bang
ijin bertanya bang misalnya kita memilki lebih dari satu input misalnya saya mau menambahkan deskripsi singkat , saya harus membuat lagi useState baru untuk save ? apa bisa gunakan 1 useState saja?
Tambahkan satu state lagi!
@@CoderMediax thanks mas
Terimakasih bang kontentnyabsangat bermanfaat buat saya
sama-sama mas
mantul bang,
permisi saya sudah melakukan formData append kok datanya gk mau fetch ya, padahal sudah saya coba console.log semua data sudah masuk
kalo Hasilnya Cannot /Get Product itu apa ya masalahnya
Kemungkinan endpoint-nya salah, coba cek source code yang saya sertakan di deskripsi!
@@CoderMediax oh iya saya lupa, supaya code nya rapi gitu pakai extension apa ya
@@ninasafitry7443 Prettier
kenapa ya bang "Cannot read properties of undefined (reading 'file')" , pas dipost man lancar tapi pas di front end nya malah error gitu pas mau upload
preview-nya jalan?
@@CoderMediax saya nyoba hapus content-type : multipart bang ternyata bisa, ketika make content type tidak bisa. Kira2 kenapa ya bang?
@@yund mungkin ada update terbaru dari axios.
@@CoderMediax baik terimakasih banyak bang, semoga pahala nya menjadi amal jariyah buat abang nya. Ditunggu konten selanjutnya bang
@@yund amin
Untuk deploy project kayak gini dimana ya bang ?
aplikasinya deploy di vercel, databasenya bisa di railway.
Oke bang 👍
Kalo deploy di vercel kok nggak bisa upload gambar itu kenapa ya?
terima kasih banyak bang tutornya seperti biasa sangat mudah dipahami, btw bang bisa bantu di modul fs nodenya, di saya kena error "eperm: operation not permitted, unlink", saya cari tau di stackoverflow karena user windows yang pake vscode nya ga dapet akses trus bikin npm nya gagal bypass, saya juga udah coba hapus cache npm trus install ulang package npm keseluruhan masih tetep gabisa bang, barangkali pernah nemu solusi buat ini .. makasih banyak bang fikri
coba install ulang node.js nya!
sudah, masih tetep gabisa execute fs.unlinkSync nya
@@bsw4245 fs sudah di import?
@@CoderMediax sudah bang, ooow tapi ini kayanya gua paham bang, ato salah paham juga gatau wkwk, karena empty string, unlinkSync ngira kalo gaada file spesifik sementara unlinkSync nya sendiri fokusnya hapus file spesifik, jadi kalo empty string itu berubah jadi direktrory ato folder, unlinkSync gabisa eksekusi codingannya karena memang ga dikasi izin buat itu 🧐 oke bang thanks udah balesin
@@CoderMediax oke solved bang, saya pindah flow data nya
Terima kasih bang
sama-sama
bang, kok itu gak pak export default aja?
bang boleh tau, kenapa req.file dari sisi client tidak terbaca ya, mohon sarannya
Coba cek source code yang saya sertakan di deskripsi untuk lebih jelasnya!
@@CoderMediax sudah mas, dari sisi backend dia bisa, tapi req.file dari sisi client tidak bisa dibaca req nya. selalu undifiend
@@CoderMediax mas kalau gak negerepotin, bisa minta no wa nya. saya sangat tertarik dengan node js dan ekpress. mungkin saya akan banyak tanya soal ini?
@@TAMBAHILMU57 saya tidak pernah menggunakan req.file
tapi saya menggunakan req.files.file mohon perhatikan lagi source code-nya!
@@CoderMediax itulah maksud saya, saya juga menggunakan req.files.file, saya mencoba dari postman untuk sisi backend, itu tidak masalah program berjalan dengan baik, tapi saat saya menjalankan menggunakan sisi frontend, selalu files nya tidak bisa dibaca, jika saya menghilangkan tipe filenya dan cuma tipe input text maka program berjalan seperti biasa, hanya saat menggunakan upload files, dari sisi frontend tidak bisa terbaca.
Kenapa url tidak terdefinisi ya ketika yg di update hanya namenya aja tanpa gambar, tp url jadi tidak terbaca, padahal udah pas saya liat kodingannya, tau kalau dari postman tidak masalah sisi backendnya, ketika edit dari frontendnya yg bermasalah.
mohon jawaban bg.
Ganti:
fileName = Product.image;
Menjadi:
fileName = product.image;
di backendnya pada function update!
Coba cek di source codenya untuk lebih jelasnya!
@@CoderMediax ohh iya makasih bg, soalnya saya liat abg pakai Product image yg huruf P besar abg bilang, jd saya ikut aja. 😁
@@abiihutabarat1426 saya yang keliru. terima kasih atas koreksinya.
@@CoderMediax oke, tapi herannya di video kok jalan ya 😁
@@abiihutabarat1426 saya edit P nya ke lowercase, tapi bagian itu saya cut.
hallo mas, mau bertanya ketika saya hit api saveProduct menggunakan REST Client itu berhasil, namun ketika menggunakan postman body sama files nya kosong, udah coba search juga masih stuck..
coba perhatikan lebih detail lagi method dan endpoint serta key-nya persis sama dengan di codingnya!
Jangan menggunakan huruf kapital sedikitpun, pastikan semuanya key dalam lowercase.
dan pastikan juga menggunakan form-data.
Bang kalau file nya semisal ditempatkan di dalam Bucket Google Cloud Storage, apakah untuk url nya akan berbeda?
Tentu saja berbeda, yang penting url imagenya jelas.
izin pak, saya di const fileSize = file.data.length, terdapat error katanya (Cannot read properties of undefined (reading 'data')), gimana ya pak? Terimakasih
coba pake const fileSize = file.size
@@CoderMediax sudah bisa pak, ternyata file nya Undefined, karena req.files.file nya beda, saya pakai req.files.image. terimakasih pak
bang di saya kok ada error ini ya di terminal
const file = req.files.file;
TypeError: Cannot read properties of undefined (reading 'file')
dan pas saya console.log req.file nya kosong/undefined
Mohon Bantuannnya
waktu saya save dari postman berhasil tapi waktu dari frontend gagal kayak gitu bang
@@bintangyonanda655 itu permasalahan form data.
coba pelajari form data pada javascript untuk lebih jelasnya!
@Bintang Yonanda udah dapet soulusi nya mas?
@@icuz_ udah mas ternyata harus pake axios dengan versi yang sama,
kalo pake versi terbaru gak bisa
@@icuz_ tapi kalo pake axios versi terbarunya saya belum dapet solusinya
bang di bagian delete ko gua cannot delete ya?
Apakah terdapat error?
Coba cek kodenya pada source code yang telah saya sertakan pada deskripsi dan sesuaikan dengan itu!
@@CoderMediax
Error
Cannot DELETE /products/3
terdapat tulisan seperti itu bang di postman, tdk ada eror
@@ramon1884 Coba delete dengan id yang lain!
@@CoderMediax tetap bang tapi source kode sudah sesuai
@@ramon1884 Updatenya bisa?
Bg, apakah kode ini bisa diterapkan untuk menyimpan file seperti pdf dll? Dan jika bisa berarti perlu dirubah extension menjadi .pdf dan sejenisnya?
bisa, tinggal tambahkan .pdf di allowedType di backend!
@@CoderMediax baik bg, thanks
File pdf bisa juga bg?
mau nanya bang ini saya upload file nya berhasil tapi misal upload file nya sama dengan yang udah pernah diupload kok ga ke duplicate ya file nya?
Agar bisa upload file duplikat, tambahkan id atau timestamp pada file namenya di controller ProductController.
bikin tutorial login & logout pake react + backend
Sudah Ada ini: ruclips.net/video/Ll_71n60vAM/видео.html
Mantap bang tutorialnya!
Tp saya ada error di
sqlMessage: "Access denied for user 'root'@'localhost' (using password: NO)"
bagian update ko ga bisa ya saya, untuk title berubah tapi image ga kesimpen / kosong ada yang tau issue ini harus di apain ?
Update dengan image atau tanpa image?
Untuk update tanpa image, memang ada sedikit kesalahan.
Ganti:
fileName = Product.image;
Menjadi:
fileName = product.image;
di backendnya pada function update!
@@CoderMediax issuenya, ketika gambar sudah di trima di folder local dan di database, ktika sudah di update di database tidak masuk name Image dan URL image, tapi gambar sudah masuk ke folder local, itu karna apa ya bang
@@CoderMediax export const updateProduct = async(req, res) => {
const product = await pM.findOne({
where: {
id: req.params.id
}
});
if (!product) return res.status(404).json({ msg: "No Data Found" });
let fileName = "";
if (req.files === null) {
fileName = pM.image;
} else {
const file = req.files.file;
const fileSize = file.data.length;
const ext = path.extname(file.name);
const fileName = file.md5 + ext;
const allowedType = [".png", ".jpg", "jpeg"];
if (!allowedType.includes(ext.toLowerCase()))
return res.status(422).json({ msg: "Invalid Images" });
if (fileSize > 5000000)
return res.status(422).json({ msg: "Images must be less than 5MB" });
const filepath = `./Public/Images/${product.image}`;
fs.unlinkSync(filepath);
file.mv(`./Public/Images/${fileName}`, (err) => {
if (err) return res.status(500).json({ msg: err.message });
});
}
const name = req.body.title;
const url = `${req.protocol}://${req.get("host")}/Images/${fileName}`;
try {
await pM.update({ name: name, image: fileName, url: url }, {
where: {
id: req.params.id
}
});
res.status(200).json({ msg: "Product Updated Successfuly" });
} catch (error) {
console.log(error.message);
}
};
@@CoderMediax maaf ralat, klo name terubah klo image ga update
@@arifyudisuryoutomo3436 Ganti:
fileName = Product.image;
Menjadi:
fileName = product.image;
bang mau tanya, ketika kita upload dengan gambar yang sama. kok enggak ngeduplicate ya? cara biar ngeduplicate gambar yang sama gimana yah? soalnya ketika di deleted jika ada gambar yang sama, akan error
pada file name tambahkan timestamp atau unik id!
Sehingga tidak ada name file yang sama, meskipun file yang di upload sama. Dengan demikian akan bisa upload duplikat file.
@@CoderMediax makasih bang. Saya nyari sana sini yang bisa multi image kayak array object, kebanyakan pakainya mongodb, pakai sequelize mysql gak ada tutorialnya -_-. ini case sangat penting banget
@@CoderMediax
const timeStamp = new Date().getTime();
const fileName = `${file.md5}_${timeStamp}${ext}`;
gini kah mas ?
Buat yg multiple upload bang...
Permisi mass, mau tanya jadi gini ketika saya upload 2 product yang berbeda dengan gambar yang sama itu di sisi backend kan gambarnya disimpan di dalam folder public ya mass.. dan seharusnya itu gambar yang kesimpan ada 2 tapi ini yang kesimpan cuma ada 1, karena gambar yang sama dan nama url di database juga jadi sama, mungkin ini salah satu permasalahan saya ketika saya coba hapus salah satu product karena gambar di directory juga terhapus, jadi mempengaruhi product yang belum di hapus
apa saya bisa menyelesaikan masalah ini dengan menambahkan waktu upload di url gambarnya mass?
mohon bantuannya solusinya ya mass, karena saya juga baru mulai belajar NodeJs dan ReactJS
terima kasih 🙏🙏
@@arifwidagdo2617 Ada dua opsi:
1. Tambahkan time uploadnya setelah md5.
2. Tambahkan id uploadnya setelah md5.
Silahkan pilih salah satu dari opsi itu!
@@CoderMediax baik siap mass, terima kasih banyak
semoga ilmu yg sudah diberikan menjadi pahala jariyah, berkah dunia-akhirat 🙏
permisi kak, kenapa kok di menit 57:55 kok gak muncul di bworser ya? padahal saya sudah mengikuti tutorial dan langkah" dengan benar dari awal, mohon bantuannya terimakasih sebelumnya
coba cek errornya di console!
@@CoderMediax baik kak terimakasih banyak, kalau saat edit name aja tanpa mengganti gambar trus melakukan update gambar langusng tidak ditemuan itu salah dmna ya, mohon bantuannya terima kasih sebelumnya
@@adityadmss_ Ganti:
fileName = Product.image;
Menjadi:
fileName = product.image;
di backendnya pada function update!
Coba cek di source codenya untuk lebih jelasnya!
@@CoderMediax Mantebs kak terima kasih banyak 🙏