Php'de Değişken Boşsa Kontrolünü Nasıl Yaparım?

Merhaba arkadaşlar php de bir şeyi yapamadım,

bir proje sayfası var sitemde, panelde proje kataloğu için bir bölüm yaptım ve projenin sayfasında ki botuna bağladım. linki girince botuna tıklayınca katalog iniyor. Fakat link girmediğim zaman yani katalog linki boş olduğu zaman botunun görünmemesini istiyorum fakat yapamadım.

Bu konuda yardımcı olursanız memnun olurum.

Veri tabanında, projeler tablosunda katalog satırına veriyi giriyorum.

sitede görünen kodda aşağıdaki gibidir.

<div class="project-orient">
<a target="_blank" href="<?php echo $sayfa->sitesi;?>"><button class="butonnn"><i class="fa fa-external-link"></i> WEB SİTESİNE GİT</button> </a>
<br>
<a target="_blank" href="<?php echo $sayfa->katalog;?>"> <button class="butonnn"><i class="fa fa-clone"></i> KATALOĞU İNDİR</button></a>
<br><br>
</div> 

 

Bunun için isset() ya da empty() fonksiyonlarını kullanabilirsin. Isset() varsa demek, empty() ise yoksa demek. Bkz;

<?php if (empty($sayfa->katalog)) { ?>
  <a target="_blank" href="<?php echo $sayfa->katalog;?>">
    <button class="butonnn">
      <i class="fa fa-clone"></i> 
      KATALOĞU İNDİR
    </button>
  </a>
<?php } ?>

 

hocam yaptım dediğinizi bür türlü olmadı, kodun tamamı aşağıda, siz bi bakar mısınız?

<?php include("header.php");?> 
<?php $id = g('id');?> 
<?php $sayfa = Sonuc(Sorgu("SELECT * FROM paketurun WHERE seo = '$id'"));?> 
<?php $kid = $sayfa->kategori;?> 
<?php $kidd = $sayfa->id;?> 
<title><?php echo $sayfa->adi;?> | <?php echo $ayar->site_title; ?></title> 
         
<section id="subheader" data-speed="8" data-type="background" class="subheader padding-top-bottom"  style="wp-content/themes/compact/images/bg/bg-1.jpg)"> 
    <div class="container"> 
        <div class="row"> 
            <div class="col-md-12"> 
                <h1><?php echo $sayfa->adi;?></h1> 
                                     
                          
            </div> 
        </div> 
    </div> 
</section> 
     
    <section class="wpb_row vc_row-fluid vc_custom_1461642218094"><div class="container"><div class="row"> 
   
   
  <div class="wpb_column vc_column_container vc_col-sm-9"><div class="vc_column-inner "><div class="wpb_wrapper "  > 
      <div class="project-slider">   
        
        
        
        
                     
                    <div class="item"><a href="uploads/paketurunler/large/<?php echo $sayfa->resim;?>" data-lightbox="roadtrip"> <img src="uploads/paketurunler/large/<?php echo $sayfa->resim;?>" width="850px"  height="600px" alt=""></a></div> 
                     
                     
                                                                     <?php  
 $haberSorgu = mysql_query("SELECT * FROM diger_resim WHERE  resim_id = $kidd ORDER BY id DESC"); 
 while($haberSonuc = mysql_fetch_object($haberSorgu)){ 
 ?>    
                         
                     
                     
                     
                    <div class="item"><a href="uploads/paketurunler/diger/large/<?php echo $haberSonuc->resim;?>" data-lightbox="roadtrip"> <img src="uploads/paketurunler/diger/large/<?php echo $haberSonuc->resim;?>" width="850px"  height="600px" alt=""></a></div> 
                     
           
           
           
           
               <?php }?> 
           
      </div> 

    </div></div></div><div class="wpb_column vc_column_container vc_col-sm-3"><div class="vc_column-inner "><div class="wpb_wrapper "  ><h3 style="text-align: left" class="vc_custom_heading vc_custom_1461641890814">PROJE DETAYLAR</h3> 
    <div class="wpb_text_column wpb_content_element "> 
        <div class="wpb_wrapper"> 
             
<ul class="project-list"> 
<li><strong>Proje adı :</strong> <?php echo $sayfa->adi;?></li> 
<li><strong>Teslim Süresi:</strong> <?php echo $sayfa->ukod;?></li> 
<li><strong>Alanı:</strong><?php echo $sayfa->efiyat;?> m2</li> 
<li><strong>Mevkii :</strong><?php echo $sayfa->ingadi;?> </li> 
<li><strong>Proje Danışmanı:</strong><?php echo $sayfa->video;?></li> 
<li><strong>Danışman Telefonu:</strong><?php echo $sayfa->telefon;?></li> 

</ul> 
<div class="project-orient"> 
<a target="_blank" href="<?php echo $sayfa->sitesi;?>"><button class="butonnn"><i class="fa fa-external-link"></i> WEB SİTESİNE GİT</button> </a> 
<br> 
<a target="_blank" href="<?php echo $sayfa->katalog;?>"> <button class="butonnn"><i class="fa fa-clone"></i> KATALOĞU İNDİR</button></a> 
<br><br> 
</div>                   
        </div> 
    </div> 
</div></div></div></div></div></section> 

                 
<!-- Related Project begin --> 
<section id="section-related-project" class="no-padding-top"> 
    <div class="container"> 
        <div class="row"> 
            <div class="col-md-12"> 
            <div class="post-entry"> 
                <?php echo $sayfa->aciklama;?> 


                                </div> 
                <div class="latest-projects-2 clearfix">                                 
                    <div class="latest-projects-wrapper"> 
                        <div class="text-center"> 
                            <h2 class="box-title">Diğer Yeni Projeler</h2>                                 
                            <div class="tiny-border"></div> 
                        </div> 
                        <div id="related-projects" class="latest-projects-items"> 

                            <!-- begin custom related loop --> 
  
  
  
  
  
  
                             <?php  
 $haberSorgu = mysql_query("SELECT * FROM paketurun WHERE durum = 1 ORDER BY id DESC"); 
 while($haberSonuc = mysql_fetch_object($haberSorgu)){ 
 ?>    
                 
              
      <div class="item"> 
          <div class="project-item-inner"> 
              <img width="750" height="250" src="uploads/paketurunler/large/<?php echo $haberSonuc->resim;?>" class="img-responsive wp-post-image" alt="medium-2" srcset="uploads/paketurunler/large/<?php echo $haberSonuc->resim;?> 750w, uploads/paketurunler/large/<?php echo $haberSonuc->resim;?> 300w" sizes="(max-width: 750px) 100vw, 750px" />              <div class="project-details"> 
                  <p class="folio-title"><a href="paket-detay-<?php echo $haberSonuc->seo;?>.html"><?php echo $haberSonuc->adi;?></a></p> 
                  <p class="folio-cate"><i class="fa fa-tag"></i> 
                    <a href="paket-detay-<?php echo $haberSonuc->seo;?>.html"></a>Yeni Projeler<span></span>   
                  </p> 
                  <div class="folio-buttons"> 
                      <a href="uploads/paketurunler/large/<?php echo $haberSonuc->resim;?>" title="" class="folio"><i class="fa fa-search"></i></a> 
                      <a href="paket-detay-<?php echo $haberSonuc->seo;?>.html"><i class="fa fa-link"></i></a> 
                  </div> 
              </div> 
          </div> 
      </div>            
              
        
              
                                <?php }?> 
            
                                  
                                  
                                  
                                  
                                  
                        </div> 
                    </div> 
                </div> 
            </div> 
        </div> 
    </div>      
</section> 
<!-- Related Project close --> 
  
<?php include("footer.php");?>

 

<?php if (!empty($sayfa->katalog)) { ?>

<a target="_blank" href="<?php echo $sayfa->katalog;?>"> 
 <i class="fa fa-clone"></i> KATALOĞU İNDİR
</a>

<?php } ?>

şu şekilde deneyin

ayrıca bir an önce mvc yapısında kodlarını yazmaya başla

Yukarıya yazdığım kodda yanlışlıkla empty() kullanmışım. Doğrusu isset() olacaktı. Kodları aşağıdaki gibi düzeltirsen büyük ihtimalle sorun çözülür.

<?php if (isset($sayfa->katalog)) { ?>
  <a target="_blank" href="<?php echo $sayfa->katalog;?>">
    <button class="butonnn">
      <i class="fa fa-clone"></i> 
      KATALOĞU İNDİR
    </button>
  </a>
<?php } ?>

 

Ek olarak , isset ile empty arasında ki farka hakim olmak gerek.

İsset : Değişken tanımı mı diye kontrol eder. 

empty : Değişkenin tanımlı olduğunu varsayar , içeriğinin boş olup olmadığını kontrol eder.

arkadaşlar çok teşekkür ederim, sorunu çözüldü. Aslında empty olarak yapmıştım fakat botonların css lerinden rekleri ayarlamayı unutmuşum hepsi transparan çıkıyormuş bende olmadı hata var zannediyordum :))  ilginiz için teşekkür ederim.

Cevap Yaz

Cevap yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git