Kodları github üzerinden halledebilirsin. Localden github'a, github'dan üç sunucuya çekersin, veritabanı için ise migrasyon sistemi yapman lazım, şu anda tüm modern frameworkler bu sistemi kullanıyor. Oradan örnek alabilirsin. Bunları elle hızlı bir biçimde yapabilirsin. Sunucuyla otomatik yapmak istersen crontab kullanarak yapabilirsin. Bence elle yapılması en temizi.
Kodların resmi:
https://prnt.sc/r6lco3
Sonsuz döngü kur, eğer veritabanında yoksa code, döngüyü sonlandır. Şu yazdığım örneği inceleyebilirsin.
<?php
$r = range(0, 100, 2); // [0, 2, 4, 6, ..., 100] Çift Sayılar
$code = null;
// Kodumuzun tek bir sayı olmasını istiyoruz.
while(1) { // Sonsuz döngü
$code = rand(0, 100); // Rastgele Sayı
if(!in_array($code, $r)) { // Eğer $code $r arrayinin içerisinde yoksa döngüyü bitir.
break;
}
else { // Eğer $code $r arrayinin içerisindeyse döngüye devam.
echo $code." bu kod çift olduğu için döngüye devam. <br/>";
}
}
echo "Kodunuz hazır: ".$code;
@redline
hashids kütüphanesini kullanabilirsin.
https://github.com/vinkla/hashids
Örnek:
<?php
require_once('vendor/autoload.php');
use HashidsHashids;
$salt = 'site_salt_anahtari_degistir';
$length = 6;
$id = 1923;
$hashids = new Hashids($salt, $length);
/
Alternatif
Key için özel harflerde seçebiliriz, hepsi küçük harf olacaktır.
$hashids = new Hashids($salt, 6, 'abcdefghijklmnopqrstuvwxyz');
/
$hash = $hashids->encode($id);
echo $hash."<br/>"; //aWKZrQ
echo $hashids->decode($hash)[0]; //1923
Veritabanı ID'sini Encrypt & Decrypt yapman bence daha uygun. Veritabanı ile uğraşma bence. Veritabanı id'sini encrypt edip kullanıcıya gösterirsin, kullanıcıdan aldığın veriyi de decrypt edip id'ye ulaşıp veritabanı işlemlerinde kullanabilirsin.
Sorun olmaz merak etme, last insert id tek bir bağlantıya özel oluşturulan bir değer.Diğer bağlantılardan izoledir.
Silme işlemi gerçekleştirdikten sonra, tek bir kategori çekecek yeni bir ajax sorgusu oluşturarak tabloya ekletebilirsin.