asp de mysql- tarih kayıt hatası

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

asp de mysql- tarih kayıt hatası

Mesaj gönderen sarp_halit »

merhaba arkadaşlar. asp ile web tasarımı yapıyorum ve güvenirliğinden ve sağlamlığı bakımından mysql veritanını kullanıyorum. sorun şu:

tarih olarak belirtilen alanlara veri kaydı yaptığın zaman kayıtları boş gösteriyor. tabi ben de belirtilen tarihler arasında sorgulama yapamıyorum. bir de tarih formatı 0000-00-00 şeklinde gösteriyor. ben de fonksiyon yazıp tarihin formatını kaydetmeden önce o şekilde değiştirdim ama yine de boş kaydediyor. üstadlarım ban yardımcı olur musunuz?

iyi çalışmalar
herkese kolay gelsin.[/b]
Fethiye den herkese sevgiler ...
X))@:>
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

eminimki yine formatta bir hata var.
yıl-ay-gün şeklinde bir formatta olması lazım kaydın. kaydı gönderirken tarihleri tırnak içine almayı unutma. örnek:

Kod: Tümünü seç

insert into tablo set tarih="2006-06-23"
kolay gelsin.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

aralara - işareti mi koyayım

Mesaj gönderen sarp_halit »

tarihi yazarken yani formatı ayarlarken aralara - işareti mi koymam gerekiyor. ben zaten formatı yyyy-mm-dd olarak ayarladım. sadece aralarda . işareti vardı.
neyse bir de öyle deneyeyim.

teşekkür ederim.
Fethiye den herkese sevgiler ...
X))@:>
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

evet ayraç olarak - kullanmalısın.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

işe yaramadı

Mesaj gönderen sarp_halit »

hocam merhaba dediğini gibi arada ayıraç olarak - kullandım ama yine de bir sonuç vermedi. halen 0000-00-00 olarak kaydediyor. acaba başka bir yerinde ayarlarıyla oynamak mı gerekiyor. veri alanı date olarak ayarlandı. formdan gelen bilgi fonksiyon yardımıyla yil- ay-gün olarak değiştirildi. response.write dediğin zaman yadırıyor ama veritabanına boş yazıyor. sebebini anlayamadım. fonksiyon da şöyle
<%
Function TarihFormatla(ByVal strTarih)

'// Eğer Değişken Boşsa Fonksiyondan Çıkılıyor
If strTarih = "" or IsDate(strTarih) = False Then Exit Function

Dim Gunler
Dim Aylar

blnSaat = True '// Eğer Saatin Gösterilmesini İstemiyorsanız Değeri False Yapın

'// Gün ve Ay İsimleri Dizileri Hazırlanıyor
Gunler = Array("","Pazar","Pazartesi","Salı","Çarçamba","Perşembe","Cuma","Cumartesi")
Aylar = Array("","Ocak","?ubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık")


'// Tarihten Veriler Alınıyor
Saniye = Second(strTarih)
Dakika = Minute(strTarih)
Saat = Hour(strTarih)
Gun = Day(strTarih)
Gun_Adi = WeekDay(strTarih)
Ay = Month(strTarih)
Yil = Year(strTarih)


'// Biçimlendirmenin Bozulmaması İçin Değerler 2 Karakterden Kısaysa Başlarına 0 Ekleniyor
If Len(Gun) < 2 then Gun="0" & Gun

If Len(Saat) < 2 then Saat="0" & Saat

If Len(Dakika) < 2 then Dakika="0" & Dakika

If Len(Saniye) < 2 then Saniye="0" & Saniye

'// Eğer Girilen Tarihte Saat Yoksa Saat Kısmı Kaldırılıyor
If Saniye = "00" and Dakika = "00" and Saat = "00" then blnSaat = False


TarihFormatla = Yil &"-"& Ay &"-"& Gun

If blnSaat then TarihFormatla = TarihFormatla &"&nbsp;"& Saat &":"& Dakika &":"& Saniye

End Function
%>
formdan gelen tarih bilgileri de bas ve bit. cdate fonksiyonu ile tarihe de dönüştürdüm. ama halen boş bir açıklama getiremedim ben
siz ne dersiniz?

kolay gelsin
Fethiye den herkese sevgiler ...
X))@:>
iqprog

garip

Mesaj gönderen iqprog »

http://tr2.php.net/manual/en/function.date.php

adresinde tarih formatlamak için php'nin date komutunu anlatıyor. böyle bir komut varken kendin neden o kadar uğraşıp komut yazdın anlamadım.

bir başka konu da mysql'e kayıt attığın insert sql'de tarih kısmında kullandığın değişken yerine direkt '2006-06-30' de mesela , bak bakalım ne olacak durum.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

değişken kullanmak gerek

Mesaj gönderen sarp_halit »

Merhaba. cvp için teşekkür ederim. ama benim kayıtta mutlaka değişken kullanmam gerek. bu sitede müşteriler rezervasyon yaptıracaklar. accesste böyle bi sorun yoktu ama dedim ya mysql daha sağlam bi veritabanı olduğundan onu tercih ettim. hem aynı zamanda kendi yazdığım programla da serverdaki kayıtlara ulaşabilme açısından yani güvenlik açısından bu veritabanını kullanıyorum.

bana verdiğin linki inceleyeceğim. ilginden ötürü teşekkür ederim.
Fethiye den herkese sevgiler ...
X))@:>
iqprog

Mesaj gönderen iqprog »

ben sorunu bulabilmen için sabit bir tarihle dene dedim. tabi değişkense değişken olacak. sabit bir tarih yaz elle ve öyle bir dene problem görünmüyorsa demekki değişkenin değerine yanlış atama yapıyormuşssun yok eğr sabit tarih girdiğinde bile sorunun devam ediyorsa demekki sorunu başka yerde arayacaksın anlamına geliyor. mysql konusunda sana yardım ederim takıldığın yer olursa.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

değişkenler değerleri doğru

Mesaj gönderen sarp_halit »

hocam değişkenlerin boş değer atamalarına karşın ben onu denedim zaten. değişkenlere değerler doğru aktarılıyor ve yukarıda yer alan fonksiyon da doğru çalışıyor. mysql front programından giriş yapınca normal ama mysql e sql stringi olarak girince de boş kayıt yapıyor. sizce neden kaynaklanıyor olabilir?

kolay gelsin. iyi çalıştırmalar.
Fethiye den herkese sevgiler ...
X))@:>
iqprog

Mesaj gönderen iqprog »

senin yazdığın kodda değişken boşluğunu başta kontrol ettiğini ben gördüm zaten.

sen gel beni bi dinle. şu insert sqldeki tarih değişkinin yerine bi '2006-06-30' yaz bi bak.
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

denemeyle bir şey kaybetmeyiz herhalde

Mesaj gönderen sarp_halit »

tamam şimdi deneyip tekrar dönücem. teşekkür ederim. bu arada bu zeosdbo paketlerinin yüklenmesi hakkında bir bilgin var mı?

bileşenler bileşen paketinde yer almıyor da
Fethiye den herkese sevgiler ...
X))@:>
iqprog

boşver onu

Mesaj gönderen iqprog »

boşver zeosu,

mydac kullan. 70$ standart lisansı. zeosla duvara toslarsın. o amatör bi vcl. beleş olduğu için herkes onu biliyo. mydac bu işin babası triali de var sitesinde. http://www.mysqlturk.com/forum/viewtopic.php?t=7
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

sabit tarihte çalışıyor

Mesaj gönderen sarp_halit »

tamam tarihi elle girince oluyor ama sorun nerede? yani değişkeni neden kabul etmedi ki? bir yorum getiremedim ben
Fethiye den herkese sevgiler ...
X))@:>
iqprog

Mesaj gönderen iqprog »

güzel,

değişkene doğru değer atamıyorsun. değişkene değer atadığın satır nasıl?
Kullanıcı avatarı
sarp_halit
Üye
Mesajlar: 241
Kayıt: 17 Ara 2003 04:30
Konum: Cennet Fethiye
İletişim:

değişkenlere atanan satırlar

Mesaj gönderen sarp_halit »

formdan gelen değerleri değişkenlere söyle aktarıyorum

<%
...
...
baslangic_tarihi = Trim(Request("baslangic_tarihi"))
bitis_tarihi = Trim(Request("bitis_tarihi"))
kayit_tarihi = date()
...
...

bas = Cdate(baslangic_tarihi)
bit = Cdate(bitis_tarihi)
bas = tarihFormatla(bas)
bit = tarihformatla(bit)

set kayitseti = baglanti.Execute("insert into tablo(..,..,baslangic,bitis,...) values(..,..,'"&bas&"','"&bit&"',...)

şeklinde devam ediyor.

sence sorun nereden kaynaklanıyor olabilir?
Fethiye den herkese sevgiler ...
X))@:>
Cevapla