Biraz hassas bir ASP update ve spilt olayı...

  • Konuyu başlatan Konuyu başlatan zumfur
  • Başlangıç tarihi Başlangıç tarihi

zumfur

Öğrenci
Katılım
6 Ocak 2012
Mesajlar
7
Reaksiyon puanı
0
Puanları
0
Herkese merhabalar,

Takıldığım önemli bir nokta var. Şöyle anlatayım :

Bir Field var. İçerisinde sistem gereği virgül ile ayrılmış değerler tutuyorum. İşte örneğin 10,20,30,40 gibi...

Ve diyelim ben bu değerlerden bir tanesini silmem gerek. Örneğin "20" değerini. Tabii burda silme derken, gerçek bir SQL "delete" olayı yok malumunuz. Olay sadece dizedeki tek bir değeri silmem gerek.

Bu örnek "20" değerini form da post methodu ile yolluyorum.
SQL ile ilgili kaydıda buluyorum tabloda buraya kadar sorun yok. Sorun burda bu değerlerin içinde split ederek bu değeri bulmam ve tekrar geri kalan değerleri update etmek yolu ile korumam.

Kısacas;
önceden 10,20,30,40...
olan field işlem bitince,
10,30,40...
haline getirebilmeliyim.

Fikir, görüş ve çözümler için peşinen teşekürler.
 

eSa

Dekan
Katılım
5 Kasım 2011
Mesajlar
9,780
Reaksiyon puanı
352
Puanları
263
Kod:
dim alanlar() as string
dim dizi_alani as string

dizi_alani = rs("deger")
alanlar=split(dizi_alani,",")

dizi_alani=""
for i=0 to ubound alanlar
    if alanlar(i)<>20 then
         dizi_alani=dizi_alani & alanlar(i) & ","
    end if
next i

rs("deger")=mid(dizi_alani,1,len(dizi_alani)-1)      'son virgülü at
 

zumfur

Öğrenci
Katılım
6 Ocak 2012
Mesajlar
7
Reaksiyon puanı
0
Puanları
0
Merhabalar,

Öncelikle cvp için çok tşk. ederim.

Kodu uyarladım ve denedim. Lakin dim tanımlamasında hatalar aldım.
Şöyleki :

<% if Request.QueryString("TblID") = "3" Then
SQL = "select * from Kategori3 where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

Silinecek_Deger = Request.QueryString("UrunID")

dim alanlar() as string
dim dizi_alani as string

dizi_alani = rs("UrunGrup")
alanlar = split(dizi_alani,",")
dizi_alani = ""
for i = 0 to ubound alanlar
if alanlar(i) <> Silinecek_Deger then
dizi_alani = dizi_alani & alanlar(i) & ","
end if
next i
rs("UrunGrup") = mid(dizi_alani,1,len(dizi_alani)-1)

end if %>

Bu durumda ;


Microsoft VBScript compilation error '800a0401'
Expected end of statement
/yonetim/iliski_kaldir.asp, line 17
dim alanlar() as string
--------------^

dedi. as string olayını kaldırıp denedim bu sefer,


Microsoft VBScript compilation error '800a0401'
Expected end of statement
/yonetim/iliski_kaldir.asp, line 24
for i = 0 to ubound alanlar
--------------------^

acaba nerde hata yapıyorum ?
 

zumfur

Öğrenci
Katılım
6 Ocak 2012
Mesajlar
7
Reaksiyon puanı
0
Puanları
0
Biraz uğraştım ama bir türlü yukarda anlattığım olayı aşamadım henüz.
 

zumfur

Öğrenci
Katılım
6 Ocak 2012
Mesajlar
7
Reaksiyon puanı
0
Puanları
0
Sorunu anlayan birisi varsa sevinirim. Cvp. lar için tşk. ederim.
 

nadirenur

Öğrenci
Katılım
11 Ocak 2012
Mesajlar
1
Reaksiyon puanı
0
Puanları
0
slmlar asp den bir sınav projesi yapıyorumm puan hesaplattırma kısmını yapamıyorumm lütfen yardım edinnnn
 

adilasi

Öğrenci
Katılım
3 Ocak 2009
Mesajlar
2
Reaksiyon puanı
0
Puanları
0
arkadaş çoktandır asp ile uğraşmıyordum fakat replace komutuyla yapabilirsin. kodlamayı yaptım fakat syntax hatası alabilirsiniz düzeltirsen büyük ihtimalle işin görülecektir.

<% if Request.QueryString("TblID") = "3" Then
SQL = "select * from Kategori3 where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

Silinecek_Deger = Request.QueryString("UrunID")

grup=rs("UrunGrup")
grup=Replace(grup,","&Silincek_Deger,"")

SQL = "update from Kategori3 set UrunGrup='"&grup&"' where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

%>
 

zumfur

Öğrenci
Katılım
6 Ocak 2012
Mesajlar
7
Reaksiyon puanı
0
Puanları
0
arkadaş çoktandır asp ile uğraşmıyordum fakat replace komutuyla yapabilirsin. kodlamayı yaptım fakat syntax hatası alabilirsiniz düzeltirsen büyük ihtimalle işin görülecektir.

<% if Request.QueryString("TblID") = "3" Then
SQL = "select * from Kategori3 where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

Silinecek_Deger = Request.QueryString("UrunID")

grup=rs("UrunGrup")
grup=Replace(grup,","&Silincek_Deger,"")

SQL = "update from Kategori3 set UrunGrup='"&grup&"' where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

%>

Eveeeet :)

Öncelikle tşk. ederim.
Kodu biraz düzenleyerek işimi hal ettim. Allah razı olsun senden.

SQL = "select * from Kategori3 where Kategori3ID = " & Request.QueryString("KID")
set rs = conn.execute(SQL)

Silinecek_Deger = Request.QueryString("UrunID")

grup = rs("UrunGrup")
grup = Replace(grup,","&Silinecek_Deger,"")

set rs = Server.CreateObject("ADODB.RecordSet")
rs.open "select * from Kategori3 where Kategori3ID = " & Request.QueryString("KID") , conn , 1 , 3
rs("UrunGrup") = grup
rs.update
 
Üst