v2.5.2
Giriş yap

Php veri yoksa error.log'da hata verme sorunu

yazilimyolcusu
86 defa görüntülendi

Kolay gelsin arkadaşlar. Php ile yaptığım sitenin anasayfasında facebook gibi sosyal medya linklerini listeletiyorum. Eğer admin panelinden facebook linkini silersem, localhost'taki error.log'da hata oluşuyor. Bu hataların oluşmaması için nasıl bir önlem almalıyım, ne yapmalıyım. Mesela denilebilir ki "if" koşulu ile eğer veri yoksa şöyle yap gibi.

Cevap yaz
Cevaplar (3)
yazilimyolcusu
88 gün önce

Şu şekilde çözdüm. Veritabanında veriyi saydırdım. Eğer veri sıfıra eşitse aqşağıdaki gibi yaptım yok eşit değilse veriyi listelettim. Bu şekilde hata vermiyor. Teşekkür ederim.

echo "https://www.facebook.com";
gokcin
88 gün önce

Eğer PHP ile bir veri varsa o veriyi kullan, yoksa varsayılan bir değeri kullanmak istiyorsanız, isset() veya empty() fonksiyonları ile bir kontrol yapabilirsiniz.

İşte örnek bir kullanım:

<?php
// Admin panelinden gelen Facebook linki
$adminFacebookLink = $linkler['facebook_url'];

// Facebook linki var mı kontrolü
if (!empty($adminFacebookLink)) {
    // Facebook linki varsa, görüntüle
    $facebook= '<a href="' . $adminFacebookLink . '" target="_blank">Facebook</a>';
} else {
    // Facebook linki yoksa, varsayılan bir değer kullanabilirsiniz
    $facebook= null;
}
?>

empty() fonksiyonu, bir değerin boş olup olmadığını kontrol eder. Bu şekilde, Facebook linki verisi varsa görüntülenir, yoksa linki yayınlamaz. Bu sayede hataların oluşmasını önleyebilirsiniz.

ebykdrms
88 gün önce
  • Oluşan hatanın ne olduğunu bilmiyoruz.
  • Anasayfadaki sosyal medya linklerinin hangi kod yapısıyla listelendiğini bilmiyoruz.

Evet, if koşulu ile eğer veri yoksa PHP'nin olmayan değeri ekrana basmaya çalışmasını engellemek gerekir.

Örneğin aşağıdaki kod, Trying to access array offset on value of type null şeklinde hata verebilir:

<a href="<?= $linkler["facebook"]["link"] ?>">FACEBOOK</a>

Şu şekilde kontrol edilmesi gerekir:

<?php if(isset($linkler["facebook"]["link"])) { ?>
    <a href="<?= $linkler["facebook"]["link"] ?>">FACEBOOK</a>
<?php } ?>