İçeriğin rss beslemesi kullanımda değil Soru - Cevap Bölümü / Kategori: Programlama

01/03/2005 - 21:37:24 cevap (5) Okunma : 8362 Bu yazıyı 0 kişi tuttu.

url'den geçirilen bilgide türkçe karakter sorunu

merhaba, sunucu taraflı doğrulama özellikli bir kayıt sayfası oluşturdum. Her şey tıkır tıkır.

aynı sayfayı başka adla kaydedip, kullanıcının bilgilerini değiştirmesi için bazı değişiklikler yaptım. Örneğin kullanıcı adı ve şifre ile kayıt sayfası çağrılıyor ve o kullanıcıya ait bilgiler veritabanından çekilip kayıt sayfasında görüntüleniyor. Kullanıcı değişiklikleri şartlara uygun yaparsa yine sorun yok. ilgili kayıt güncelleniyor. Ancak şartlardan biri ya da bir kaçı olumsuzsa kontrol sayfası kayıt sayfasından aldığı bilgileri url aracılığı ile geri kayıt sayfasına gönderiyor. ve sorun burada başlıyor. (ben sayfayı düzeltmek için bazı değişiklikler yaptıkça) bazen türkçe karakter içeren bilgiler kayıt sayfasına bozuk dönüyor. (örneğin ad alanındaki eşref bilgisi kontrol sayfasından e_ref şeklinde dönüyor.) bazen de aşağıdaki hata mesajı ile karşılaşıyorum:

Parameter 1 of function IsDefined, which is now "g�", must be a syntactically valid variable name.

hatanın işaret ettiği kod bölümü ise:

<cfset a_ad = #form.ad#>
<cfif len(#form.ad#) lt 3>
    <cfset add = 0>
<cfelse>
    <cfset add = 1>
</cfif>

Aslında url’den geçirilen bilgiler bozuma uğramasa bütün bu sorunlar olmayacak. Bunu sağlamanın bir yolu var mı? Lütfen yardım.

adres metoikos profilini göster
Yılmaz Uğurlu 04.03.2005 22:34:36
En iyi cevap mı ?

:) aslında tam olarak anlamadım sorunu ancak şöyle bir çözüm getireyim istedim. Bilgileri URL den göndermek yerine SESSION faaliyet alanında saklarsan sanırım sorunun olmayacaktır. bu tür bilgi güncellemesi olan bir uygulama yaptığımı hatırlıyorum, ve bu tür bir sorunla karşılaşmadım. sayfanın başlangıcında

<cfprocessingdirective pageencoding='utf-8'>

şeklide bir tanımlama yap. eğer içinden çıkamazsan. tam olarak neler yapıldığını anlatırsan sana daha ayrıntılı olarak yardımcı olmak isterim.

adres imaginer profilini göster
imaginer 05.03.2005 17:10:24
En iyi cevap mı ?

merhaba, session değişkenlerini kullanınca türkçe sorunu ortadan kalktı. Ama meteikosun önerdiği kodlar url değişkenleri için işe yaramadı. Sanırım benim cf ayarlarında bir sorun var.

tek bir sorun kaldı ki o da e-posta adresinin görünüp görünmemesini sağlayan bir checkbox(cb) sorunu. kontrol sayfasında yazdığım kod aşağıda:

<cfif #form.onay_ePosta# eq 'on'>
<cfset session.kayit1.onay_ePosta = 1>
<cfelse>
<cfset session.kayit1.onay_ePosta = 0>
</cfif>

kontrol sayfası şartlara uymayan verilerin olması durumunda verileri kayıt sayfasına döndürüyor. dolayısıyla checkbox’ın değeri kayıt sayfasında onaylanmışsa onaylanmış olarak, onay kaldırılmışsa da kaldırılmış olarak döndürülüyor. Buraya kadar sorun yok. Sorun verilerin tamamının şartlara uygun olması ve update kod bloğunun çalışması sırasında oluşmakta.

Hataya ilişkin raporlar aşağıda:

Error Executing Database Query. …onay_ePosta = 1’ sorgu ifadesi içindeki Sözdizimi hatası (eksik işleç)

The error occurred in ..\kayitKontrol2.cfm: line 141

141 : onayePosta = #session.kayit1.onayePosta# 142 : </cfquery> 143 : </cfif>

Yardımcı olursanız minnettar kalırım.

adres metoikos profilini göster
Yılmaz Uğurlu 07.03.2005 22:46:44
En iyi cevap mı ?

Ne yalan söyleyeyim sorunu anlayamadım ancak, 1,0 yerine True ve False’ı kullanması tavsiye ederim kolay gele

adres mdemirci01 profilini göster
Murat Demirci 13.03.2005 06:52:32
En iyi cevap mı ?
Faydalı cevap

ColdFusion MX sürümlerindeki <cflocation> etiketinde bir sorun bulunuyor. Bu sorun nedeniyle içerisinde Türkçe karakterli bir metin içeren bir url stringini cflocation’da kullandığınızda karakterler bozulabiliyor. Aynı sorun ColdFusion 7’de de olabilir (ki var galiba, az önce denedim). Yanlış hatırlamıyorsam <cflocation> etiketi verdiğiniz url stringini geriye-uyumluluk nedeniyle otomatik olarak utf-8’e dönüştürmüyor… Bu işlemi elle yapmalısınız.

Yani:

<cflocation url="ikinci_sayfa.cfm?param1=ıişŞğĞ" />

ifadesi Türkçe karakterlerin bozulmasına neden oluyor. Doğru kullanım ise

<cflocation url="ikinci_sayfa.cfm?param1=#URLEncodedFormat('ıişŞğĞ','utf-8')#" />

URLEncodedFormat fonksiyonunu zaten bu tür url üretimlerinde (<cflocation>‘da <a href=’‘ ../> etiketinde vb) mutlaka kullanılmalıdır. Çünkü url stringleri Türkçe karakter haricinde başka karakterlerde de problem çıkarabilirler (örn. boşluk karakteri)

URLEncodedFormat‘ın aslında opsiyonel olan ikinci argümanı olan UTF-8 encoding değerinin setEncoding ile belirlediğiniz URL encoding’iyle aynı olmasına özen gösteriniz.

Normal şartlarda setEncoding’i kullanmanız gerekmez ve dolayısıyla CF varsayılan olarak UTF-8 kullanır, fakat (özellikle CF 6.1 kullanıyorsanız) URLEncodedFormat fonksiyonunda ikinci argüman ile UTF-8’i belirtmeniz gerekir! (bu cümleye dikkat).

Söylenebilecek bazı şeyler daha var, ancak talep oluncaya kadar burda kesiyorum. kolay gelsin.

adres imaginer profilini göster
imaginer 15.03.2005 16:56:04
En iyi cevap mı ?

Problem çözüldü. teşekkürler.

aç-kapa Bu Yazıyı Tutanlar

bu yazıyı tutan kimse yok.

yeni üyelik | şifremi unuttum

aç-kapa Toplantı Kahraman ve need4code.com Projesi Connect Toplantısı

Kahraman ve need4code.com Projesi Connect Toplantısı

Selam arkadaslar, Programlama ile uğraşanların hayatlarını kolaylaştıracak desktop ve web tabanlı ortak iki proje ile ilgili 3. toplantımızı 3Aralık...
Kategori: Toplantı

aç-kapa Yarışma Fikir10000 Dijital Pazarlama Fikir Yarışması

Fikir10000 Dijital Pazarlama Fikir Yarışması

ADTECH tarafından düzenlenen Fikir10000 yarışmasına; dijital pazarlama ile ilgili size ait olan fikrinizle katılabilir ve 10.000 YTL’lik birinci...
Kategori: Yarışma

aç-kapa Yarışma 7Dx Demoscene Party

7Dx Demoscene Party

2002 yılından beri amatör bilgisayar kültürü ile ilgilenen insanları bir araya getirmeyi hedefleyen 7DX parti serisinin bu seneki ayağı olan 7D8 Demo ...
Kategori: Yarışma

aç-kapa Eğitim Türkiye'de İnternet Konferansı - Internet Teknolojileri Derneği -22-23 Aralık ODTÜ

Türkiye'de İnternet Konferansı - Internet Teknolojileri Derneği -22-23 Aralık ODTÜ

Etkin Katılım Çağrısı Türkiye’de Internet ile ilgili grupları biraraya getirerek İnternet’i tum boyutlarıyla tanıtmak, gelistirmek, tartı...
Kategori: Eğitim

aç-kapa Konferans Bilgi Güvenliği ve Kriptoloji Konferansı

Bilgi Güvenliği ve Kriptoloji Konferansı

Önemli Tarihler: Etkinlik Tarihi : 24-26 Aralık 2008 Son Bildiri Gönderme Tarihi : 20 Ekim 2008 Bildiri Kabul Tarihi Bildirimi :...
Kategori: Konferans

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 358 (0 kayıtlı, 358 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

coldfusion mysql ubuntu
 
sponsor adobe istanbul