• 04-10-2016, 21:49:45
    #1
    Merhabalar;

    projemde sayfaya göre css kodlarını import eden fonksiyon hazırladım ama adres haberoku.php?id=7 şeklinde olunca çalışmıyor bunu sebebi ne olabilir sizce?
    i.php deki fonksiyonum:
    $hid=$_GET['id'];
    function cssimp(){
      $ld="/mersinili/";
        if($_SERVER['REQUEST_URI'] == "$ld"."index.php"){
        echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");"$ld"
    @import url("style/slayt.css");
    </style>';
    }elseif($_SERVER['REQUEST_URI'] == "$ld"){
          echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/slayt.css");
    </style>';
        }elseif ($_SERVER['REQUEST_URI'] == "$ld"."haberler.php") {
            echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/haber.css");
    </style>';
        }elseif ($_SERVER['REQUEST_URI'] == "$ld"."haberoku.php?id=$hid") {
            echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/haber.css");
    </style>';
        }
    }
    haberoku.php içeriği:

    <?php
    include 'ayar.php';
    include 'ust.php';
    ?>
    <div id="icerik">
      <div id="temiz"></div>
      <div id="icerikkapsayici">
    
    <div id="icerik">
      <div id="haber">
    <?php
    $id=$_GET['id'];
    $veri = $db->query("SELECT * FROM haber WHERE id = $id");
    $veri = $veri->fetch(PDO::FETCH_ASSOC);
    //print_r($veri);
    
    ?>
    <h1><?php echo "$veri[baslik]"; ?></h1>
    <img src="dosya/haber/manset/<?php echo "$veri[bfoto]"; ?>" alt="<?php echo "$veri[baslik]"; ?>" width="600" height="300" class="manset"/>
    
    <?php echo "$veri[haber]"; ?>
    </div>
    </div>
    <div id="alt">
      <p class="haber">Mersinili.com ekibi tarafınca tasarlanıp kodlanmıştır, web sayfamız eniyi google chrome veya firefox tarayıcısı ile 1366 * 768 çözünürlüğünde görüntülenir.</p>
      <ul id="copy">
      <li><img src="img/icon/posta.png" width="26" height="26" alt="eposta" />  info<img src="img/icon/at.png" width="16" height="16" />mersinili.com</li>
      <li><img src="img/icon/skype.png" width="26" height="26" /> mersinili</li>
      </ul>
    </div>
    
    </body>
    </html>
    bu arada i.php yi ust.phpnin içinde include ettim.
  • 04-10-2016, 23:51:50
    #2
    function en üstüne global $hid;
    diye ekleme yaparsanız değişkene ulaşabilirsiniz
  • 05-10-2016, 12:09:13
    #3
    @By_Milat'ın dediği gibi yapmalısın.
    function cssimp(){ //altına
    global $hid;
    Bir de $_GET'ten id değerini alıp direk SQL'de kullanmamalısın. Güvenlik açığı olur.
  • 05-10-2016, 14:49:14
    #4
    vaktim olmadıgı için pek katkı saglıyamayacagım ama bir tedbir

    $hid=$_GET['id'];

    bu kodu

    $hid= mysql_real_escape_string($hid);

    ile değiştir
  • 05-10-2016, 14:58:34
    #5
    merzifon adlı üyeden alıntı: mesajı görüntüle
    vaktim olmadıgı için pek katkı saglıyamayacagım ama bir tedbir

    $hid=$_GET['id'];

    bu kodu

    $hid= mysql_real_escape_string($hid);

    ile değiştir
    PDO'nun olduğu yerde mysql_real_escape_string'in olması pek makul olmaz. Zaten mysql_ fonksiyonlarını PHP 5.5 ve sonrası versiyonlar desteklemiyor.

    Onun yerine kodu şu şekilde değiştirebilir:
    $veri = $db->prepare("SELECT * FROM haber WHERE id = ?");
    $veri->bindValue(1,$id,PDO::PARAM_INT);
    $veri->execute();
    $veri = $veri->fetch(PDO::FETCH_ASSOC);
  • 05-10-2016, 17:24:08
    #6
    yardımlarınız için tşk fonksiyonda explode kullanarak sorunu çözdüm
    function cssimp(){
      $ld="/mersinili/";
      $haberoku=$_SERVER[REQUEST_URI];
      $haberoku=explode("?", $haberoku);
        if($_SERVER['REQUEST_URI'] == "$ld"."index.php"){
        echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");"$ld"
    @import url("style/slayt.css");
    </style>';
    }elseif($_SERVER['REQUEST_URI'] == "$ld"){
          echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/slayt.css");
    </style>';
        }elseif ($_SERVER['REQUEST_URI'] == "$ld"."haberler.php") {
            echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/haber.css");
    </style>';
        }elseif ($_SERVER['REQUEST_URI'] == "$ld"."haberoku.php?".$haberoku['1']) {
            echo '
    <style type="text/css">
    @import url("style/style.css");
    @import url("style/uye.css");
    @import url("style/haber.css");
    </style>';
        }
    }
    function meta(){
        if($_SERVER['REQUEST_URI'] == '/mersinili/index.php'){
        echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Mersin nöbetci eczane gezilecek yerler firmalar ilanlar haberler</title>';
        }elseif($_SERVER['REQUEST_URI'] == '/mersinili/'){
        echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Mersin nöbetci eczane gezilecek yerler firmalar ilanlar haberler</title>';
        }elseif ($_SERVER['REQUEST_URI'] == '/mersinili/haberler.php') {
            echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Mersin spor ekonomi siyaset haberleri</title>';
        }
    }
  • 05-10-2016, 18:05:31
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    fonksiyonu nerede çağırıyorsun

    yapman gereken fonksiyonu çağırırken
    fonksiyon_adı($hid); şeklinde çağırman ve

    function fonksiyon_adi($hid){
    //artık $hid olarak kullanabilirsin
    }
  • 05-10-2016, 21:00:23
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    global deyimini ve kullanimini inceleyebilirsin. Gecici cozumler uretmek yerine onu ogren her yerde ihtiyacin olabilir.
  • 06-10-2016, 12:29:15
    #9
    efezahid adlı üyeden alıntı: mesajı görüntüle
    global deyimini ve kullanimini inceleyebilirsin. Gecici cozumler uretmek yerine onu ogren her yerde ihtiyacin olabilir.
    asıl geçici çözüm global deyimidir.

    fonksiyon içine değişken göndermenin tek ve en doğru yolu yukarıdaki gibi kullanımını anlattığım şekildir.