• 04-12-2010, 16:37:05
    #1
    Üyeliği durduruldu
    Mrb. arkadaşlar,

    Malesef ajaxtan anlamadığım için internetten basit yapıda bir form post scripti bulup, bunu üye olma bölümünde kullanıyorum.

    2 Sayfam var. Biri üye bilgilerinin girildiği üye ol sayfası, diğeri bilgilerin işlendiği post sayfası.

    Üye olma sayafsında kullandığım ajax.
    <script>
    function yeni_nesne(){
        var nesneyarat;
        /*@cc_on @*/
        /*@if (@_jscript_version >= 5) try { nesneyarat = new ActiveXObject("Msxml2.XMLHTTP"); }
        catch (e) {
            try { nesneyarat = new ActiveXObject("Microsoft.XMLHTTP"); }
            catch (E) { nesneyarat = false; }
        }@end @*/
        if (!nesneyarat && typeof XMLHttpRequest!='undefined') {
         try {
          nesneyarat= new XMLHttpRequest();
         } catch (e) {
          nesneyarat=false;
         }
        }
        return nesneyarat;
    }
    
    function AoL(id,cikti,hedef) {
        var aktifform  = document.getElementById(id);
        var ekranayaz  = document.getElementById(cikti);
        var ciktiver   = new String("");
        var name, value;
            for(var I = 0; I < aktifform.elements.length; I++){
                name  = aktifform.elements[I].name;
                value = aktifform.elements[I].value;
                ciktiver += escape(name) +'='+ encodeURIComponent(value) +'&';
            }
        var nesneiste = new yeni_nesne();
            nesneiste.open("post", hedef, true);
            nesneiste.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-9");
            nesneiste.send(ciktiver);
            nesneiste.onreadystatechange = function() {
                if (nesneiste.readyState == 4 && nesneiste.status == 200) {
                    ekranayaz.innerHTML = nesneiste.responseText;
                }
                else { ekranayaz.innerHTML = ''; }
            }
        return false;
    }
    </script>
    -------------------------------

    üyelik formu:

    <form id="form" onsubmit="return AoL(this.id,'sonuc','post.asp')">
    burda formlar mevcut.
    </form>
    post.asp 'de yazılan bilgilerde alttaki divde gösteriliyor.

    <div id="sonuc"></div>
    -------------------------

    Gelelim sorunuma. Bir kişi siteye üye olacağı zaman, boş bırakılmaması gereken alanları, 2 defa yazılması gereken alanların vs. kontrolünü post sayfasında yapıyorum.

    Eksik bilgi olduğu zaman gayet güzel çalışıyor. Tam istediğim gibi..

    Fakat üyelik başarıyla tamamlanıncada belirttiğim sonuc div 'ine Başarıyla üye oldunuz yazdırabiliyorum. Burda bunu yazdırmak yerine, hazırladığım bir sayfaya yönlenmesini istiyorum.

    window.location kullandım yemedi. ASP 'nin redirect 'ini kullandım ilgili sayfa, o divin içerisinde açıldı..

    Kısaca, hem istediğim yazıyı yazdırmak hem de istediğim zaman istediğim sayfaya nasıl yönlendirebilirim?

    yardımlarınız için şimdiden teşekkürler.
  • 05-12-2010, 16:03:38
    #2
    Üyeliği durduruldu
    Şahin ben bu tür sorunların önüme çıkmaması için ajax & asp kullanırken yaptığım şey şu şekilde oluyor.

    İf Request.form("kad") = "" then
    Response.Write("<script>alert(""Kullanıcı Adı Boş..."")</script>")
    elseif Request.form("sifre") = "" then
    Response.Write("<script>alert(""Şifre Boş"")</script>")
    else
    kayıt yap
    end if

    Bunları üyeyi veritabanına kaydettireceğin zaman denetliyorsun.Sonuç olarak boş ise karşısına hata mesajı çıkaracak. burak@goztepe.net eklersen detaylı örnek gösterebilirim.