Zoque.Forum
Dirsek Teması:
Geri Dön Zoque.Forum » Webmaster Kaynaklari » Sunucu Tabanlı Programlama (Server Side) » ASP » Çoklu veri kaydı sorunu (ASP, MySql)


Yanıt
 
LinkBack Seçenekler
Old 07.08.2007   #1 (permalink)
 
Üyelik Tarihi: 27.01.2007
Yer: -
Mesaj: 112
Çoklu veri kaydı sorunu (ASP, MySql)


Merhabalar,

Aşağıdaki kod ile çoklu seçimle gelen sayfadan verileri girdiriyorum. Ancak soru işareti ile belirttiğim opsiyonID'ye karşılık gelen değeri bir türlü yazdıramıyorum.

Yaptığım şey kısaca şu: daha önce tanımladığım opsiyon başlıkları ( opsiyon tablosu ) ve alt seçeneklerini (kalem tablosu) başka bir tabloya aktarmak (urun_opsiyon) ve ürün eklerken bu urun_opsiyon tablosundan verileri çoklu seçimle çekmek. Ancak kalem tablosundan kalemID yi çoklu seçimle çekerken kalemID lerin bağlı oldukları ana başlıkların opsiyonID'lerini urun_opsiyon tablosuna yazdıramıyorum. Ya ilk id yazıyor ya son id.

Bu sorunu nasıl aşabilirim?

opsiyon tablosu:
opsiyonID
baslik

kalem tablosu (opsiyonların basliklarının altına eklenen seceneklerin tutulduğu tablo)
kalemID
opsiyonID (bu değeri çektirmek istiyorum ancak kalem ID yi çektiğim halde bu değeri çekemiyorum)
ad

urun_opsiyon tablosu: (urun tablosuna çağrılmak için opsiyon ve kalemlerin birlestiği tablo )
opsiyon_bagID
kalemID
urunID
opsiyonID


Kod:
oX = split(Request.form("oKalem"),",")
for each ekle in oX

	kayit=("INSERT into urun_opsiyon " &_
				"( " &_
				"urunID, " &_
				"opsiyonID, " &_
				"kalemID " &_
				") VALUES (" &_
				"'"& session("uID") &"', " &_
				"'"& ?? &"', " &_
				"'"& ekle &"' " &_
				");")

	set rs= bag.execute(kayit)
Next
divemaster şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 07.08.2007   #2 (permalink)
 
mceL's Avatar
 
Üyelik Tarihi: 30.11.2000
Yer: Bursa
Yaş: 20
Mesaj: 809
Re: Çoklu veri kaydı sorunu (ASP, MySql)

ASP bilgim olmadığı için kodları yazamayacağım lakin mantık şu şekilde:

INSERT sorgusundan önce kalem için sorgulama yapmak lazım, şöyle ki:

Kod:
sorgu = SELECT opsiyonID FROM kalemler WHERE kalemID = kalem
Daha sonra opsiyonID kısmına bu sorgudan dönen değeri yazmalısınız.
mceL şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 07.08.2007   #3 (permalink)
 
Üyelik Tarihi: 27.01.2007
Yer: -
Mesaj: 112
Re: Çoklu veri kaydı sorunu (ASP, MySql)

Bunları denedim daha önce ya ilk kayıt ya da son kayıt ekleniyor, kalem tablosundaki opsiyonID karşılığı eklenmiyor

Normalde farklı tablolardan kayıt yaptırıyorum orada sorunum yok, ancak for each döngüsüne soktuğumda urun_opsiyon tablosuna ekleme yaparken opsiyon ve kalem tablolarından veri çekiyorum, bu opsiyon ve kalem tabloları birbirine bağlantılı olduğu için sorun burada çıkıyor.

Mesaj divemaster tarafından 07.08.2007 (19:59) yeniden düzenlendi..
divemaster şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 08.08.2007   #4 (permalink)
 
Üyelik Tarihi: 27.01.2007
Yer: -
Mesaj: 112
Re: Çoklu veri kaydı sorunu (ASP, MySql)

Bu konuyu pek bilen yok sanırım. Neyse, input değerinde ID leri l-l ile ayırıp kayıt esnasında ayrıca bir splitten geçirdikten sonra sorun çözüldü.

Bu tür bir uygulamada takılabilecekler için yapılışını aşağıya ekliyorum

Kullanıcı tarafı:
Kod:
<input type="checkbox" name="oKalem" value="<%=rs("opsiyonID")%>l-l<%=rs("kalemID")%>" />
Kayıt tarafı
Kod:
oX = split(Request.form("oKalem"),",")
for each ekle in oX
verigir = split(ekle,"l-l")
	kayit=("INSERT into urun_opsiyon " &_
				"( " &_
				"urunID, " &_
				"opsiyonID, " &_
				"kalemID " &_
				") VALUES (" &_
				"'"& session("uID") &"', " &_
				"'"& verigir(0) &"', " &_
				"'"& verigir(1) &"' " &_
				");")

	set rs= bag.execute(kayit)
Next

Mesaj divemaster tarafından 08.08.2007 (16:59) yeniden düzenlendi.. Açıklama: örnek ekledim
divemaster şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 08.08.2007   #5 (permalink)
 
absconder's Avatar
 
Üyelik Tarihi: 09.12.2000
Yer: istanbul
Yaş: 30
Mesaj: 1,947
Re: Çoklu veri kaydı sorunu (ASP, MySql)

öncelikle kodunuz bu şekilde daha kolay olur

Kod:
for each ekle in Request.form("oKalem")
	verigir = split(ekle,"l-l")
	kayit=("INSERT into urun_opsiyon " &_
				"( " &_
				"urunID, " &_
				"opsiyonID, " &_
				"kalemID " &_
				") VALUES (" &_
				"'"& session("uID") &"', " &_
				"'"& verigir(0) &"', " &_
				"'"& verigir(1) &"' " &_
				");")

	bag.execute(kayit)
Next
açıkçası ilk yazdığınızdan ve ne talep ettiğinizden tam birşey anlamadığım için konuya girdi yapmadım. yalnız, zaten kalemID aracılığı ile opsiyonID ye ulaşabiliyorsanız (hatalı değilsem kalem tablosundan), bunu bir daha checkbox içine ikili yazmanızın anlamı yoktur.

bu şekilde , | # gibi karakterlerle verilerinizi taşıma ihtiyacı duyuyorsanız bir yerlerde (algoritma, veritabanı dizaynı vb.) hata yaptığınıza dair burnunuza kötü kokular gelmelidir. olmaz diye birşey yok tabi, ancak çok ta doğru bir yöntem değil.

aşağıdaki kod muhtemelen çalışacaktır.

Kod:
<input type="checkbox" name="oKalem" value="<%=rs("opsiyonID")%>" />
Kod:
for each ekle in Request.form("oKalem")
	kayit=("INSERT into urun_opsiyon " &_
				"( " &_
				"urunID, " &_
				"opsiyonID, " &_
				"kalemID " &_
				") SELECT "& session("uID") &", opsiyonID, kalemID FROM kalem WHERE kalemID = "& ekle &";")

	bag.execute(kayit)
Next
__________________
"oturduğum mahallenin yolları çamurluydu, boyalı ayakkabı giysem bile, o yollardan geçtikten sonra çamurlanmamaları mümkün değildi. hayatım da böyle." yılmaz güney
http://www.sipidik.com
absconder şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Old 08.08.2007   #6 (permalink)
 
Üyelik Tarihi: 27.01.2007
Yer: -
Mesaj: 112
Re: Çoklu veri kaydı sorunu (ASP, MySql)

Aslında durum biraz karışık, doğaldır anlatamam veya senin anlaman

Benim bahsettiğim; farklı farklı verileri ayrı tablolalara girip bu verileri daha sonradan bir ürün haline getirmekti tabi bu takıldığım nokta bunlardan opsiyon tablosu bir alt tabloya daha bölününce veriyi çekerken ana tablonun ID sini çekemekti sorunum. forum üzerinde zor oluyor bu tür sorunları dile getirmek.

Böyle bir sorgu kullanımını ilk defa gördüm ve onca kod oyunlarına hiç gerek kalmadan sorunu çözdüm.

Yeni şeyler öğrenmek güzel, teşekkürler absconder
divemaster şu an çevrimdışı  
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl'e kaydet! http://reddit.com/submit?url=%url%&title=%title%Wong'e kaydet!Yahoo'ya kaydet!Google'a kaydet!MSN'e kaydet!Facebook'e kaydet!
Mesajdan alıntı yaparak yeni bir cevap ekleyin
Sponsorlu Bağlantılar
Zoque.Forum
Reklam
Yanıt

Etiketler

coklu , veri , kaydi , sorunu , asp , mysql



 
Zoque'a hoşgeldiniz!
Zoque 27.02.1999 tarihinde yayın hayatına başlamış, paylaşıma dayalı bir oluşumdur. Tasarım, teknoloji, web, kültür ve sanat ana başlıkları altında bilgi paylaşımı ve benzer değerlere sahip katılımcıların birbirleriyle iletişime girmelerine imkan sağlar. "Az ama Öz" sloganından yola çıkarak, kaliteli ve nitelikli katılımı temel alır.

Saygın ve ciddi bir ortamda yardımlaşmak, haberleşmek, kendi bildiklerini diğer katılımcılarla paylaşmak isteyen, oluşumumuza düzenli katılımda bulunacağı inancını taşıyan konuklarımızı üye olmaya davet ediyoruz. [ » ]


Üye Girişi:

UslanmaM baktabul.com TEKplatform TEKplatform

En popüler ilk 100 etiket
Tag Cloud
acil adsl ajax almak arama araniyor ariyorum ariyoruz asp bilen bilgi bilgisayar blog calisma canon css dijital div domain dosya eleman film firefox flash font form forum fotograf freelance google gore grafik grafiker hakkinda hangi hata hatasi hosting html ilgili ilk image internet istanbul istiyorum java javascript karakter kayit kisisel kullanimi link logo mac mail menu muzik mysql nasil neden nedir online photoshop php problemi program programi reklam resim satilik sayfa script server ses sistemi site sitesi son soru sorun sorunsali sorunu sql swf tasarim tasarimci tasarimcisi tasarimi turk turkce veri video web windows wordpress xml yardim yazi yeni zoque
Zoque RSS Aboneliği
Son eklenen konuları e-posta ile haber verelim mi?

Forum Yazılımı: vBulletin® Version 3.7.3 Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

Arayüz/Skin "Güneş" © www.zoque.com / net. Copyright © 1999 - 2008
Forum Saati GMT +2. Şu anda saat: 06:26.