ASP 'de Karşılaşabileceğiniz bazı hata mesajları ve çözüm yolları

ZoRRoKiN

Özel Üye
7 Ağu 2005
2,149
377
WORLD
• Microsoft VBScript compilation (0x800A03FB)
Expected 'Loop'
Hata Nedeni :
Bu hatayu Do döngüsüne başladıktan sonra döngünün devam etmesi için Loop komutunu koymadığınızdan dolayı alırsınız.
Hata Çözümü :
Do.. döngüsünün başladığı noktayı takip edin ve gereken yere Loop komutu yerleştirerek sorunu çözün.

• Subscript out of range (0x800A0009)
Hata Nedeni :
Split ile böldüğünüz Dizide olmayan bir rakam'ı kullanmaya çalışırsanız bu hatayı alırsınız.
Örnek vermek gerekirse
<%
strYazi = "ASPRehberi.Net"
strDizi = Split(strYazi*".")
Response.Write strDizi(5)
%>
Burada 0 ve 1. olmak üzere 2 adet verimiz vardır.Bunlar ASPRehberi(0 ve Net(1) dir.Burada bunların üstünde bir rakam kullanırsanız bu hatayı alırsınız ve size yazmış olduğunuz rakam ile ilgili olarak hata mesajı yazdırır.Buradaki örneğe göre :
Subscript out of range: '[number: 5]'
gibi bir hata çıkmaktadır.
Hata Çözümü :
Böldüğünüz değerde olmayan veriyi kullanmadığınızdan emin olun.Verilen hata mesajındaki rakam'a ve satır'a göre hatayı bulup düzeltebilirsiniz.

• Server.CreateObject Failed (800401f3)
Hata Nedeni :
Sunucunuzda yüklü olmayan bir bileşeni kullanmaya çalışırken bu hatayı alabilirsiniz.
Hata Çözümü :
Kullanmak istediğiniz bileşeni sunucunuza yüklemelisiniz.

• Too Few Parameters*Expected 1
Hata Nedeni :
Bu hatayı genelde sql komutunuzu yanlış yazdığınızda alırsınız.
Mesela :
<% sql = "select * from tablo WHERE id ="&id&" " %>
derseniz ve eğer id diye bir alan yoksa bu hatayı alabilirsiniz.
Hata Çözümü :
Sql komutunu baştan yazmayı deneyin ve yazdığınız alan isimlerinin doğruluğundan emin olun.

• General error unable to open registry key (80004005)
Hata Nedeni :
Eger bu hatayı alıyorsanız.Database yolunuzu yanlış girdiğinizden dolayı alıyorsunuzdur.
Hata Çözümü :
Database yolunun doğru olduğundan emin olun.

• Syntax error (missing operator) in query expression (0x80040E14)
Hata Nedeni :
Bu hatayı genelde eğer database de querystring ile aldığınız alanı seçtirmek isterken alırsınız.Yani anlamı id no yu doğru alamadığınızdan dolayıdır.
Hata Çözümü :
Sayfada id no yu nasıl aldığınız bir daha kontrol edin ve ona göre asp kodunu yazın.

• Cannot update. Database or object is read-only (80004005)
Hata Nedeni :
Bu hatayı db nizin olduğu işlem yaptığınız klasörde eğer yazma izni yoksa alırsınız.
Hata Çözümü :
Bu problemin çözümü için hosting'i sağlayan kişiyle bağlantıya geçip klasörünüze yazma izni vermesini söylemeniz lazım.
Sitemizde Makaleler kategorisinde "IIS ve Yazma İzni" konusunu bulabilirsiniz

• Expected 'End' (800a03f6)
Hata Nedeni :
Açmış olduğunuz If döngüsünü kapamamış olabilirsiniz.
Hata Çözümü :
If döngülerinizi tekrardan gözden geçirin.Hata da gösterilen satıra end if yazmayı deneyin.

• Expected statement (800A0400)
Hata Nedeni :
Açmış olduğunuz ASP tag'ını kapamamış olabilirsiniz.
Hata Çözümü :
ASP tag lerini gözden geçirin.<% %> taglerinin eşit sayıda olduğundan emin olun.

• Expected End of Statement (BC30205)
Hata Nedeni :
ASP kodlarını belirten <% ASP kodu %> açma kapama imleç lerini yanlış kullandığınızdan dolayı olur.
Hata Çözümü :
ASP kodunun bittiği yere %> koyduğunuza emin olun.Veya fazladan <% olmadığından emin olun.

• Permission Denied (800a0046)
Hata Nedeni :
Sunucunuzda FSO desteği pasif durumdayken FSO(File System Object) kullanmaya çalışırken alırsınız.
Hata Çözümü :
FSO desteğini açmak için klasörlerinize yazma izni ve tam kontrol vermelisiniz.Sitemizde "IIS ve Yazma İzni" makalesinde bunu detaylı olarak görebilirsiniz.Sunucunuzda çalıştırmak için hosting sağlayıcınızla iletişim kurmalısınız.

• loop without do (800a040e)
Hata Nedeni :
Bu hatayı eğer bir döngünün devam etmesini belirtmiş ve nerden başlayacağını belirtmediyseniz alırsınız.
Hata Çözümü :
Döngüye girmesini istediğiniz yerin başına
<% do while not recordset.eof %>
kodunu koyarak bu sorunu çözersiniz.

• The Microsoft Jet database engine cannot find the input table or query tablo. Make sure it exists and that its name is spelled correctly. (80040e37)
Hata Nedeni :
Adında anlaşılacağı gibi bir tablo'yu açarken tablo'yu bulamadığını belirtiyor
Hata Çözümü :
Tablo'nun database'inizde olduğundan emin olun.

• Yanit nesnesi error Üstbilgi hatasi (80004005)
Hata Nedeni :
Hatayı aşağıda ki kodu sayfanınızın başına koyarak düzeltebilirsiniz.
Hata Çözümü :
<% Response.buffer = True %>

• Object Required (0x800A01A8)
Hata Nedeni :
Adındanda anlaşılacağı üzere degişken kullanmışsınız fakat degişken tanımlı değildir.
Hata Çözümü :
Değisken'i tanımlayarak ve dogru olarak kullanarak bu sorunu çözersiniz.

• Operation don't allowed when object is closed (0x800A0E78)
Hata Nedeni :
Bu hatayı DB'den veri sildikten sonra değişkeni kapatırsanız alırsınız.
Hata Çözümü :
DB'den veri sildikten sonra
<%
rs.close
set rs = nothing
%>
kodunu kaldırarak çözebilirsiniz.

• Type mismatch (0x800A000D)
Hata Nedeni :
isim yazan yerde sub(altsayfa) adı olabilir.Eğer bu hatayı alıyorsanız isim(sizinkine göre değişir) adlı sub'ı tanıtmamışsınız demektir.
Hata Çözümü :
ısim adlı sub'a gitmek için "islem" değişkenini kullanacağım.
Sayfanızın başına şu kodları yerleştirin:
<%
If islem = "isim" then
call isim
end if
%>

• Data type mismatch in criteria expression (80040e07)
Hata Nedeni :
Bu hatayı sql komutunuzda yanlış seçim yaparak alırsınız.Mesela veritabanınızda bir alana numara(değeri number olan) alana yazı eklemeye çalışırsanız bu hatayı alırsınız.
Hata Çözümü :
Veritanınızdaki data türü'nü değiştirerek sorunu çözebilirsiniz.

• Unspecified Error (Belirtilmemiş Hata) (0x80004005)
Hata Nedeni :
Bu hatayı almanız için geçerli bir neden yoktur.Web üzerindeki bir sunucuda genellikle almazsınız* genelde localhost'da rastlarsınız.
Hata Çözümü :
Veritabanı ismini değiştirerek bu sorunu çözebilirsiniz.Veritabanınız olan .mdb dosyasının ismini değiştirmeniz ve bağlantınızı ona göre ayarlamanız yeterli olacaktır.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.