Öncelikle kodlarını
```php
// Buraya
```
Bu şekilde girersen düzgün gözükecektir.
Sorgu içerisinde DISTINCT kullanırsan sorunun çözülecektir.
SELECT *, DISTINCT food_kategori FROM food WHERE aktif4 = 1 gibi
$row['categoryName'] diye bişeyin daha önceden tanımlanmadığı için böyle bir hata alıyorsun.
var_dump($row) yaparak çıktı alırsan öyle birşey gelmediğini görürsün.
şu kodu dene
$(".btn").click(function(){
let btn = $(this).children('i.fa-heart');
if(btn.hasClass("far")){
btn.removeClass("far").addClass("fas");
}else{
btn.removeClass("fas").addClass("far");
}
});
yukarıdakilere ek olarak Cache kullanabilirsin.
sürekli sql sorgusu sordurmazsın buda sana hız kazandırır.
ilgili kodları buradan paylaşırsan daha kolay yardımcı olurlar bu şekilde kafamızda pek bişey canlanmıyor.
https://medium.com/@mesutbeysulen/java-geli%CC%87%C5%9Fti%CC%87rme-paketi%CC%87-jdk-kurulumu-ve-ortam-de%C4%9Fi%CC%87%C5%9Fkenleri%CC%87ni%CC%87-ayarlama-7f3d8380c36e
burdaki gibi ortam değişkenlerinden yapabilirsin.

https://stackoverflow.com/questions/47042091/netbeans-8-2-installing-native-library-error?answertab=votes#tab-top
Komut istemini açıp echo %JAVA_HOME% yazıp enter a tıkla
Eğer sonuç:
C:\Program Files\Java\jdk1.8.0_151\bin
bunun gibi bişey çıkmıyorsa.
Java JDK'nın kurulu olduğu yeri Ortam değişkenleri'ne tanımla
set JAVA_HOME -> C:\Program Files\Java\jdk1.8.0_151\bin
Not: bu işlemi yaptıktan sonra bilgisayarı kapatıp açman gerekir.
cache kullanarak sürekli sql sorgusu sormasını engellersen hem şişme yapmayacaktır hemde daha hızlı yüklenecektir.
Çok mantıklı bir yöntem değil ama şöyle bişey geldi aklıma
$col = "resim".$i + 1;
$ekle = $con->prepare("INSERT INTO resim SET $col = :resim");
Ayrı sütunlara eklemek yerine hepsini 1 sütuna kayıt etmek istersen.
Birincisi
Dosya isimlerini bir array'e atayıp json'a dönüştürerek kayıt edebilirsin.Tekrar kullanırken json'ı array'e dönüştürürsün.
İkincisi
Dosya isimlerinin arasına , koyarak kayıt etmek.Tekrar kullanırken explode() ile virgülden parçalayarak array'e dönüştürürsün.