Sayın arkadaşlar hepinizi iyi günler dilerim. Yaklaşım 1 haftadır çözmeye uğraştığım bir problem var bir türlü beceremedim. Bilgisi olan var ise yardımcı olabilirse çok sevinirim.
Klasik ASP ile birlikte JScript AJAX kullanıyorum. Admin panelinde bir galeri ekleme sayfası yaptım. Sayfada textbox'lar ve listbox'lar var. Kullanıcı bir textbox1'e bilgi girdikten sonra Kontrol butonuna basınca AJAX>ASP>Veritabanı>ASP>HTML ile yazdığı yazıya uygun bir değer bir alttaki textbox2'ye geliyor. Ayrıca listbox1'den bir seçim yapınca listbox2 içeriği yine Ajax ile veritabanından güncelleniyor. Kullanıcı listbox'lar daki seçimini de gerçekleştirdikten sonra Kaydet tuşuna bastığı zaman POST ile bir sonraki ASP sayfası olan kayıt sayfasına gidiliyor.
Fakat nasıl oluyor anlamış diğer (statik / manuel giriş yapılan) textboxlar ve listboxlardaki veriler sonraki sayfaya post edilirken AJAX sonrası ASP'den gelen verilerin bulunduğu form elementleri (listbox2, textbox2 ....) değil herhangi bir değer göndermek, değişkenler sonraki sayfaya gitmiyor bile. Dolayısıyla kayıt ekranına bir önceki giriş sayfasındaki tüm form bileşenlerini aktaramıyorum. Problem nerededir. Bilgisi olan arkadaşlar yardımcı olabilirse çok sevinirim.
Sistem : Win10 / IIS10
Form Gönderim Metodu : POST
Kullanılan Tarayıcı : Edge / Chrome
VERİ GİRİŞ SAYFASI
POST SONRASI Edge Network Dökümü (EN ALTTA GİTMESİ GEREKEN 2 - 3 FORM ELEMENTİ HİÇ GİTMİYOR POST İLE)
Not : GET ile de gitmiyor.
Request URL: http://localhost/admin-panel/galeri_yeni_kaydet_adim2.asp
Request Method: POST
Status Code: 200 OK
Remote Address: [::1]:80
Referrer Policy: strict-origin-when-cross-origin
Cache-Control: private
Content-Length: 281
Content-Type: text/html
Date: Wed, 16 Dec 2020 00:41:53 GMT
Server: Microsoft-IIS/10.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate, br
Accept-Language: tr,en;q=0.9,en-GB;q=0.8,en-US;q=0.7
Cache-Control: max-age=0
Connection: keep-alive
Content-Length: 245
Content-Type: application/x-www-form-urlencoded
Cookie: __utmz=111872281.1607030071.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=111872281.2083291776.1607030071.1607895667.1607999300.4; ASPSESSIONIDCASCSAAT=GBDJDPJAGBMNKHCBBFKBKPJN
Host: localhost
Origin: http://localhost
Referer: http://localhost/admin-panel/galeri_ekleme_girisi.asp
Sec-Fetch-Dest: frame
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.60
galeri_id: 0
dil_kodu: TR
text_referans_404: DENEME
tablo_adi: glr
galeri_aciklama:
title:
keywords:
description:
ekleme_tarihi: 16.12.2020
sira_no: 0
galeri_altinda_yazi: TRUE
gorunurluk: TRUE
galeri_gorunusu: TRUE
Kullanılan JS.AJAX'dan bir kesit
function nesneyarat404() { var nesne404; if(window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari nese404 = new XMLHttpRequest(); }else{ // code for IE6, IE5 nesne404 = new ActiveXObject("Microsoft.XMLHTTP"); } return nesne404; } var http = nesneyarat404(); function ayarla_404() { var tablo_adi404 = document.getElementById('tablo_adi').value; var baslik404 = document.getElementById('text_referans_404').value; var yenitarih404 = new Date().getTime(); if (tablo_adi404=='glr'){ var dil_kodu404 = document.getElementById('dil_kodu').value; } http.open('get','ajax_404_olustur.asp?baslik404ref='+baslik404+'&tbl='+tablo_adi404+'&dil_kodu=' + dil_kodu404 + '&dummy=' + yenitarih404, true); http.onreadystatechange = function(){ if(http.readyState == 4 && http.status == 200){ document.getElementById('div_404_url').innerHTML = http.responseText; } }; http.send(null); delete yenitarih; }Kod
Yığını:
JS'nin ÇALIŞTIRDIĞI ASP'den bir Kesit
<% 'ajax_404_olustur.asp Response.ContentType = "text/HTML" Response.Charset = "windows-1254" Session.LCID = 1055 Session.CodePage = 1254 if session("admin")=true then randomize dim tarih_saat dim dil_kodu dim tablo_adi dim baslik_ref dim tarih_tmp dim rasgele dim yeni_404 dim sqlajax dim kajax dim vajax rasgele = int(rnd*1000+1) tarih_saat = request.querystring("dummy") dil_kodu = request.querystring("dil_kodu") tablo_adi = request.querystring("tbl") baslik_ref = request.querystring("baslik404ref") if len(baslik_ref&"a")>1 then tarih_tmp = tarih_saat tarih_tmp = replace(tarih_tmp, ".", "") tarih_tmp = replace(tarih_tmp, ":", "") tarih_tmp = replace(tarih_tmp, " ", "") yeni_404 = olustur_404_adi(baslik_ref) if len(yeni_404&"a")<2 then yeni_404 = tarih_tmp yeni_404 = trim(yeni_404) . . veritabanı bağlantısı . if kajax.recordcount=1 then %> <input type="text" value="" name="url_404_tmp" id="url_404_tmp" size="30" style="font-family: Tahoma; color: #FF0000; font-size: 8pt; font-weight: bold; border: 1px solid #000000"> <span style="font-size: 7pt; color: #FF0000"> Oluşturulacak 404 URL'si veritabanında mevcut. Bu yüzden lütfen başlığınızı değiştiriniz.</span> <% else %> <input type="text" value="<%=yeni_404%>" name="url_404_tmp" id="url_404_tmp" size="30" style="font-family: Tahoma; color: #FF0000; font-size: 8pt; font-weight: bold; border: 1px solid #000000"> <span style="font-size: 7pt; color: #008000"> OLUŞTURULABİLİR</span> <% end if . . .Kod
Yığını:
Resimdeki Galeri Başlık kısmına örneğin DENEME yazıyorum Kontrol butonuna bastığım zaman alttaki textbox'a (url_404_tmp) veri düzgün geliyor. Ama POST yapıp sonraki sayfaya gidince o textbox hiç bir şekilde gitmiyor. Aynı durum Ajax ile veri çektiğim listbox'larda da var. Bu arada asp sayfalarının başında
<%@ CodePage=1254 Language="VBScript" %>
<% Option Explicit %>
<% session.lcid = 1055 %>
komutları da vardır. HTML sayfasının baş kısmı da aşağıdaki gibidir.
<html> <head> <meta http-equiv="Content-Language" content="tr"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1254"> <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> <script language="javascript" src="ajax_fg.js" type="text/javascript"></script> <script language="javascript" src="ajax_404.js" type="text/javascript"></script> <script language="javascript" src="ajax_404_kontrol.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="sema.css" /> <meta http-equiv="cache-control" content="no-cache" /> </head> <body onload="bannersec_fg();"> <img src="images/menu_ana_kategori.gif"> [<a href="galeri_ekleme_girisi.asp" target="ana">Fotoğraf Galerisi Ekle</a>] <img src="images/menu_ana_kategori.gif"> [<a href="galeri_listele.asp" target="ana">Fotoğraf Galerisi Listele</a>] <img src="images/menu_ana_kategori.gif"> [<a href="galeri_listele_agac.asp" target="ana">Galeri Ağaç Listesi</a>]<br><br> <table border="1" width="100%" id="table1"> <form method="POST" action="galeri_yeni_kaydet_adim2.asp" name="myform"> <input type="hidden" id="galeri_id" name="galeri_id" value="0"> <tr> <td bgcolor="#99CCFF">Galeri Dili *</td> . . .Kod
Yığını:
Biraz soru uzun oldu ama şimdiden teşekkürler...
Son Giriş: 4 yıl önce
Son Mesaj Zamanı: 4 yıl
Mesaj Sayısı: 2
Gerçek Toplam Mesaj Sayısı: 2
İkinci El Bölümü Mesajları: 0
Konularının görüntülenme sayısı: 329 (Bu ay: 6)
Toplam aldığı artı oy sayısı: 0 (Bu hafta: 0)
En çok mesaj yazdığı forum bölümü: Yazılım Geliştirme