• 26-05-2009, 00:53:12
    #1
    function.php

    <?php 
    function aciklama($urun) {
    $ver = mysql_query("SELECT * FROM urun where urun='$urun' ");
    while($git = mysql_fetch_array($ver, MYSQL_ASSOC)) {
    $sonuc= $git["aciklama"];
    echo "Ürün açıklaması : $sonuc";
    }}
    
    
    function fiyat($sonuc) {
    $bul = mysql_query("SELECT * FROM fiyat where urun='$sonuc' ");
    while($gel = mysql_fetch_array($bul, MYSQL_ASSOC)) {
    $fiyat= $gel["fiyat"];
    echo "Ürün Fiyatı : $fiyat";
    }}
    
    ?>
    index.php

    <?php
    include ("aynasiz.php");
    include ("function.php");
    $urun = $_GET["urun"]; 
    aciklama($urun);
    ?>
    
    <?php fiyat ($sonuc);?>
    index.php?urun=Kahve
    Şeklinde çalıştırıyorum. Ürün açıklaması : Açıklama... şeklinde çıkıyor.
    Ama aciklama functionundan $sonuc değişkenini alıp fiyat functionunda çalıştıramıyorum ?
  • 26-05-2009, 01:08:36
    #2
    function aciklama($urun) {
    $ver = mysql_query("SELECT * FROM urun where urun='$urun' ");
    while($git = mysql_fetch_array($ver, MYSQL_ASSOC)) {
    return  $git["aciklama"];
    }}
    function fiyat($sonuc) {
    $bul = mysql_query("SELECT * FROM fiyat where urun='$sonuc' ");
    while($gel = mysql_fetch_array($bul, MYSQL_ASSOC)) {
    return $gel["fiyat"];
    }}
    $sonuc = aciklama($urun);
    $fiyat =  fiyat($sonuc);
    echo "ürün açıklaması : ".$sonuc;
    echo "ürün fiyatı :".$fiyat;
    olabilir, hatalı yazmadıysam.
  • 26-05-2009, 01:15:11
    #3
    Yapmak istediğim bu değil zaten o function'ları örnek olarak yazdım.
    Amacım function içerisindeki değişkeni aynı sayfada başka yerde kullanmak örnek ;

    <?php include ("aynasiz.php");
    include (function.php);
    aciklama($urun);
    ?>
    Bu çalışıyor diyelimki ama ben sayfanın en altında tekrar functionu çalıştırmadan
    <?php echo "$sonuc";?>
    şeklinde çalıştırmak istiyorum
  • 26-05-2009, 03:09:24
    #4
    Fonksiyon içinde tanımlanan değişken fonksiyon dışında kullanılamaz diye biliyorum...
  • 26-05-2009, 03:11:24
    #5
    Bugün sdemirkeser ile muhabbetimizde bu konu geçmişti,
    global ve local değişkenlerden konuşuyorduk.
    $sonuc değişkenini global yapmama rağmen
    echo olarak kullanamıyorum ama olduğundan bahsetmişti
  • 26-05-2009, 03:14:46
    #6
    Değişkenin oluştuğu fonksiyonda bir session oluşturup $sonuc içindeki veriyi bu sessiona atayıp istediğin yerde o veriyi session ile çekebilirsin.

    Alternatif
  • 26-05-2009, 03:17:35
    #7
    Eğerki iş sessiona kalırsa index.php içerisinde bir sorgu daha yapıp istediğim işlemi gerçekleştirebilirim zaten ama benim istediğim functiondan değişkeni almak illede almak
  • 26-05-2009, 03:41:20
    #8
    Öncelikle selamlar

    Doğru anladıysam eğer şu şekilde yapabilirsin;

    <?php
    include ("aynasiz.php");
    include ("function.php");
    $urun = $_GET["urun"]; 
    aciklama($urun);
    ?>
    
    <?php fiyat (aciklama($urun));?>
    Bu şekilde yapman aciklama fonksiyonunu iki defa çalıştırmak zorunda bırakacak bundan dolayı funtiondan return dönmen daha mantıklı ve bu konuda uysal_rockci'nin vermiş olduğu kodu kullanmalısını.

    function.php
    function aciklama($urun) { 
    $ver = mysql_query("SELECT * FROM urun where urun='$urun' "); 
    while($git = mysql_fetch_array($ver, MYSQL_ASSOC)) { 
    return  $git["aciklama"]; 
    }} 
    function fiyat($sonuc) { 
    $bul = mysql_query("SELECT * FROM fiyat where urun='$sonuc' "); 
    while($gel = mysql_fetch_array($bul, MYSQL_ASSOC)) { 
    return $gel["fiyat"]; 
    }}
    diger.php
    $sonuc = aciklama($urun); 
    $fiyat =  fiyat($sonuc);
    Sayfanın başında $sonuc ve fiyat değişkenine eklersin, Sayfanın sonunda da kullanabilirsin tabi bu sayfanın sonunda dediğin kısım başka bir sayfa değilse!

    "Eğerki iş sessiona kalırsa index.php içerisinde bir sorgu daha yapıp istediğim işlemi gerçekleştirebilirim zaten ama benim istediğim functiondan değişkeni almak illede almak " demissin. Eğer başka bir sayfa ise global kullanabilirsin. Ama ben session öneririm. Ek sorgu yapmaktan bahsetmissin ama gerek yok diye tahmin ediyorum.

    function aciklama($urun) { 
    $ver = mysql_query("SELECT * FROM urun where urun='$urun' "); 
    while($git = mysql_fetch_array($ver, MYSQL_ASSOC)) { 
    $_SESSION['description'] = $git["aciklama"]; 
    }}
    gibi.

    Yani kısacası yapılabilenecek bütün yollar söylenmiş gibi. Şimdilik benimde aklıma alternatif bir yol gelmiyor.

    Kolay gelsin
  • 26-05-2009, 03:50:54
    #9
    Daha açıklayıcı olarak konuyu şu şekilde alalım.

    function.php

    function kat ($kategori) {
    $kat = mysql_query("SELECT * FROM kategori where link='$kategori'");
    while($k = mysql_fetch_array($kat, MYSQL_ASSOC)) {
    $yaz = $k["adi"];
    echo' <TITLE>'.$k['title'].'</TITLE>';} }
    index.php?kategori=test
    $kategori = $_GET["kategori"];
     <?php kat($kategori);?>
    Yaptığımız zaman sayfaya title vermiş olduk.

    Sitenin başka bir kısıma kat functionundaki $yaz değişkenini yazdıracağım mesela ?

    Şimdi daha ayrıntılı oldu sanırım.