+ Cevap Yaz
Toplam 3 sayfadan 1. sayfa
1 2 3 En SonEn Son
27 sonuçtan 1 ile 10 arası gösteriliyor

Konu: Refresh yapmadan sql den veri cekmek

  1. #1
    Üye
    Üyelik Tarihi
    09/2008
    Mesaj
    2

    Refresh yapmadan sql den veri cekmek

    Bir tablodaki veriyi kontrol ettirmek icin mutlaka sayfayi refresh ettirmek mi gerekiyor. Bunu sayfa refresh olmadan yapamazmiyiz.

    Suanda tablodaki deger 0. Burasi 1 oldugunda otomatik olarak pop up acilmasini istiyorum. Ama suanda mevcut sistemlerin hemen hepsi iframe ile veya sayfa icine gomulmus olan refresh ler ile bunu tespit edebiliyor. Refresh in sinir bozucu tik sesi de beni rahatsiz ettiginden bu yontemi kullanmak istemiyorum. AJAX veya DHTML gibi yardimci lisanlar ile bu mumkun mudur?

    Eger mumkun degil ise meta icine refresh i attip iframe ile yapacam

  2. #2
    Üye
    Üyelik Tarihi
    01/2007
    Yer
    İstanbul
    Mesaj
    255

    AJAX ile refresh olmadan degeri kontrol ettirip 1 oldugunda popup işlemlerini yapabilirsin

  3. #3
    Yönetim Kurulu chesterx Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    12/2007
    Yer
    İstanbul
    Mesaj
    2,437

    interval ile belirli aralıklar ile phpye veri gönderip bunu kontrol ettirebilirsin bunu da AJAX ile yapabilirsin
    Bilişim; bilgi ve yetenek meselesi değil ahlak ve karakter meselesidir. . .

    www.sercanvirlan.com

  4. #4
    nevsehir seandos Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    08/2008
    Mesaj
    93

    gonder.php
    PHP Kodu:
    <script type="text/javascript" language="javascript">
       var 
    http_request false;
       function 
    makePOSTRequest(urlparameters) {
          
    http_request false;
          if (
    window.XMLHttpRequest) { // Mozilla, Safari,...
             
    http_request = new XMLHttpRequest();
             if (
    http_request.overrideMimeType) {
                 
    // set type accordingly to anticipated content type
                //http_request.overrideMimeType('text/xml');
                
    http_request.overrideMimeType('text/html');
             }
          } else if (
    window.ActiveXObject) { // IE
             
    try {
                
    http_request = new ActiveXObject("Msxml2.XMLHTTP");
             } catch (
    e) {
                try {
                   
    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (
    e) {}
             }
          }
          if (!
    http_request) {
             
    alert('Cannot create XMLHTTP instance');
             return 
    false;
          }
          
          
    http_request.onreadystatechange alertContents;
          
    http_request.open('POST'urltrue);
          
    http_request.setRequestHeader("Content-type""application/x-www-form-urlencoded");
          
    http_request.setRequestHeader("Content-length"parameters.length);
          
    http_request.setRequestHeader("Connection""close");
          
    http_request.send(parameters);
       }

       function 
    alertContents() {
          if (
    http_request.readyState == 4) {
             if (
    http_request.status == 200) {
                
    //alert(http_request.responseText);
                
    result http_request.responseText;
                
    document.getElementById('myspan').innerHTML result;            
             } else {
                
    alert('There was a problem with the request.');
             }
          }
       }
       
       function 
    get(obj) {
          var 
    poststr "mytextarea1=" encodeURIdocument.getElementById("mytextarea1").value ) +
                        
    "&mytextarea2=" encodeURIdocument.getElementById("mytextarea2").value );
          
    makePOSTRequest('gonderildi.php'poststr);
       }
    </script>


    <form action="javascript:get(document.getElementById('myform'));" name="myform" id="myform">
    <textarea id="mytextarea1">my test
    1
    2
    3
    </textarea>
    <textarea id="mytextarea2">my test2
    4
    5
    6</textarea>
    <br>
    <input type="button" name="button" value="Submit" 
       onclick="javascript:get(this.parentNode);">
    <input type="submit" name="button" value="Normal Submit Button">
    </form>

    <br><br>
    Server-Response:<br>
    <hr>
    <span name="myspan" id="myspan"></span>
    <hr> 
    gonderildi.php
    PHP Kodu:
    <?php
    print_r
    ($_POST);
    ?>
    kendi gore ayarla

    bu daha iyi giib http://www.dynamicdrive.com/dynamici...axroutine.htm#

  5. #5
    xam
    xam hatta değil
    Üye xam Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    03/2006
    Mesaj
    1,026

    prototype kullanin daha guvenli.. yada yahoo connection manager.
    Cevizi kIr, icinden cikani ye

  6. #6
    Üçekmek Turkoman Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    05/2008
    Yer
    in altında
    Mesaj
    1,121

    Konu küllenmiş ama merak ettiğim bir şey vardı onu sorayım dedim ben Raiden'in sitesindeki şunu kullanmaya çalıştım.

    BURADAN BAKINIZ

    Fakat ben bir php fonksiyonunu çağırmaya çalışıyorum olmuyor. Nasıl yapılacağı konusunda fikir verebilecek olan var mı?
    Çıktığın merdivene tekme atma ki, başkaları da çıkabilsin.

    Sahip olduğu bilgi ve zekânın yükünü taşıyabilen, mütevazı; taşıyamayan, ukala olur.

  7. #7
    Üçekmek Turkoman Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    05/2008
    Yer
    in altında
    Mesaj
    1,121

    Gerek kalmadı arkadaşlar meğerse dosya yolunu vermeyi unutmuşum çalışıyormuş
    Çıktığın merdivene tekme atma ki, başkaları da çıkabilsin.

    Sahip olduğu bilgi ve zekânın yükünü taşıyabilen, mütevazı; taşıyamayan, ukala olur.

  8. #8
    Üçekmek Turkoman Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    05/2008
    Yer
    in altında
    Mesaj
    1,121

    Arkadaşlar, yukarıdakini müstakil çalıştırdım ama kendi çalışmama uygulayamadım. Bunun üzerine Forumda ararken rastladığım (şimdi yine aradım bulamadım) yanlış hatırlamıyorsam hunTER ait bir kod vardı bunu hemen hemen kendi çalışmama adapte ettim ama tek sorun var kodları vereyim önce

    Kod:
    <html>
    <head>
    <script>
       function Veri(){
          var yazdirma_alani = document.getElementById('yazdirma_alani');
          var x = XML('classlar/istemci.php'); // XMLHttpRequest nesnesını cagır.
          x.send('bir=1&sey=2'); // Bıseyler gonder..
    
          // Bıseyler al..
          x.onreadystatechange = function() {
             if (x.readyState == 4 && x.status == 200){
                yazdirma_alani.innerHTML = x.responseText;
                setTimeout("Veri()",3000); // Her 3 sanıyede bır kendını yenıle.
                }
             }
          }
    
       function XML(hedef) {
          var x;
          /*@cc_on @*/
          /*@if (@_jscript_version >= 5)
            try { x=new ActiveXObject("Msxml2.XMLHTTP"); }
            catch (e) {
               try { x=new ActiveXObject("Microsoft.XMLHTTP"); }
               catch (E) { x=false; }
               }
            @else x=false; @end @*/
    
          if(!x && typeof XMLHttpRequest != 'undefined'){
             try { x = new XMLHttpRequest(); }
             catch (e) { x=false; }
             }
    
          x.open('POST',hedef,true);
          x.setRequestHeader('Content-type', 'application/x-www-form-urlencoded;charset=iso-8859-9');
          return x;
          }
    </script>
    </head>
    <body><!-- <body onLoad="Veri(); // Sayfa yuklendıgınde baslar">!-->
       <div id="yazdirma_alani"></div>
    </body>
    </html>
    
    Bu kodda <div id="yazdirma_alani"></div> kısmından nasıl kendi fonksiyonuma arguman gönderebilirim.

    Şu kısmı kullanmam gerekiyor gibi geliyor

    Kod:
    x.send('bir=1&sey=2'); // Bıseyler gonder..
    
    ama maalesef nasıl yapacağımı kestiremedim.

    <div id="yazdirma_alani"></div> db den veri çeken bir döngü içinde benim burada mesela id yi iletmem lazım

    şöyle $str[0];
    Çıktığın merdivene tekme atma ki, başkaları da çıkabilsin.

    Sahip olduğu bilgi ve zekânın yükünü taşıyabilen, mütevazı; taşıyamayan, ukala olur.

  9. #9
    Üçekmek Turkoman Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    05/2008
    Yer
    in altında
    Mesaj
    1,121

    Veriyi iletmeyi başardım ama tüm elemanların değil sadece ilk elemanın sonucunu döndürüyor.
    Çıktığın merdivene tekme atma ki, başkaları da çıkabilsin.

    Sahip olduğu bilgi ve zekânın yükünü taşıyabilen, mütevazı; taşıyamayan, ukala olur.

  10. #10
    Üçekmek Turkoman Adlı Üyenin Profil Grafiği
    Üyelik Tarihi
    05/2008
    Yer
    in altında
    Mesaj
    1,121

    Kodu aşağıdaki şekle dönüştürdüm fakat JS de döngüler farklı mı çalışyor anlayamadım. Teoride ögenin id numarasını alıp gönderip sonra cevabı çekip <div> e ataması ardından sonrakine geçmesi lazım ama sorun oluyor. Birinci ögenin değerini alıp gönderiyor ama sonucu (sıralanmış halde 5 öge var) ikinci ögeye yansıtıyor. Operada ise çalışmaması son elemana yani beşinci elemana ekliyor.

    Ancak bu kadar gelebildim bir yardım eden çıkarsa sevinirim

    Kod:
    <?php
    // BELGE include() edilebilir
    ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1254" />
    <title>DENEME SAYFASI</title>
    <script>
    function Veri()
    {
        var x = XMLIstek(), i=0, gelendiv;
        var divler = document.getElementsByTagName('div');
        
        while(gelendiv = divler[i++])
        {      
            if(gelendiv.className == "alanlar")
            {
                var al = document.getElementById(gelendiv.id)
                /**//**/
                x.send('puani='+gelendiv.id);
                x.onreadystatechange = function()
                {
                    if (x.readyState == 4 && x.status == 200)
                    {
                        al.innerHTML = x.responseText;
                        setTimeout("Veri()",3000); // Her 3 sanıyede bır kendını yenıle.
                    } 
                }
            }
        }
    }
    
    function XMLIstek() 
    {
        var x = null;
        
        if(!x && typeof XMLHttpRequest != 'undefined')
        {
            try 
            { 
                x = new XMLHttpRequest(); 
            }
            catch (e) 
            { 
                x=false; 
            }
        }
        
        x.open('POST','classlar/istemci.php',true);
        x.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=ISO-8859-9');
        
    return x;
    }
    </script>
    </head>
    <body onLoad="Veri()">
    <?php
    for($i = 1; $i < 6; $i++)
    {
        echo $i.'<br>';
        echo '<div id="'.$i.'" class="alanlar"></div><br>';
    }
    ?>                                
    </body>
    </html>
    
    istemci.php

    PHP Kodu:
    <?php
    $n 
    $_POST["puani"];
    echo 
    "hadi yaz ".($n);
    ?>
    Çıktığın merdivene tekme atma ki, başkaları da çıkabilsin.

    Sahip olduğu bilgi ve zekânın yükünü taşıyabilen, mütevazı; taşıyamayan, ukala olur.

+ Cevap Yaz

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Bookmarks

Mesaj Yazma Hakları

  • Yeni mesajgöndermezsiniz
  • Cevap yazamazsınız
  • Dosya ekleyemezsiniz
  • Mesajınızı düzenleyemezsiniz