İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Longtext

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
Arkadaşlar merhaba;

İçerisinde binlerce içeriği olan bir veritabanım vardı.
Bu veritabanımda açıklama(varchar255) şeklinde birde alanım var.
Yeni yazdığım scriptten dolayı açıklama(varchar255) alanını, longtext yapmam icab etti.
PhpMyAdmin'e girdim ve bu alanı değiştirerek longtext yaptım.
Mevcut içeriğimdeki açıklamaların sapıtarak yarıda kesildiğini farkettim.
Neyse yedeğim olduğundan dolayı bu sorunu hallettim.
Asıl sorunuma gelecek olursam, longtext alanımda uzun yazıları kayıt etmem gerekirken, uzun yazılarımı admin panelinden ekleyemiyorum.
Kısa bir yazı yazdığımda kayıt ediyor.
Textarea içinde karakter sınırlaması yok.
Kafayı yemek üzereyim arkadaşlar lütfen bi akıl verir misiniz?
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
66
Konum
Sakarya
1. Longtext e gerek yok text yapman yeterli
2. Sorun sanirim form action in get olmasi. Post yapmam gereliyor. Get browser a bagli olarak belli bir uzunluktan sonrasini keser.
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
1. Longtext e gerek yok text yapman yeterli
2. Sorun sanirim form action in get olmasi. Post yapmam gereliyor. Get browser a bagli olarak belli bir uzunluktan sonrasini keser.

Text yaptım yine aynı sorunla karşılaştım. POST ile kayıt yapıyorum veritabanına.
Eklemesi lâzım yani.
Bu arada phpmyadmin'den eklediğimde uzun şekilde kayıt yapıyor ve veriyi uzun hâliyle okutabiliyorum.
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
linki iletme imkanin varmi

Kod:
	elseif ($_GET["ekle"] == "kayit") {
		if ($_GET["onay"] == 1) {
				$katidx = $_POST["katid"];
				$isimx = $_POST["isim"];
				$kaynakx = $_POST["kaynak"];
				$kaynaklinkx = $_POST["kaynaklink"];
				$resimlinkx = $_POST["resimlink"];
				$urllinkx = $_POST["urllink"];
				$surex = $_POST["sure"];
				$aciklamax = $_POST["aciklama"];
				$etiket1 = $_POST["etiket1"];
				$etiket2 = $_POST["etiket2"];
				$etiket3 = $_POST["etiket3"];
				$etiket4 = $_POST["etiket4"];
				$etiket5 = $_POST["etiket5"];
			
			$sqlkayitekle = "SELECT * FROM tozlukutu_kat WHERE id='$katidx'";
			$raporkayitekle = mysql_query($sqlkayitekle);
			$rowsraporkayitekle = mysql_num_rows($raporkayitekle);
			$rowkayitekle = mysql_fetch_array($raporkayitekle);
			
			$testdb1 = mysql_query("INSERT INTO tozlukutu_kayit (medyaid, katid, isim, counter, tarih, puan, topoy, kaynak, kaynaklink, resimlink, urllink, sure, aciklama, etiket1, etiket2, etiket3, etiket4, etiket5) VALUES ('$rowkayitekle[1]', '$katidx', '$isimx', '0', '$tarihsys', '0', '0', '$kaynakx', '$kaynaklinkx', '$resimlinkx', '$urllinkx', '$surex', '$aciklamax', '$etiket1', '$etiket2', '$etiket3', '$etiket4', '$etiket5')",$dbconn);

Kayıt işlemi burada olup bitiyor. Bi hata olduğunu sanmıyorum.
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
Amma zor soru sormuşum yahu :)
Çözümünü öğrenince yazarım buraya arkadaşlar.
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
Merhaba arkadaşlar sorunu düzelttim ve artık sorunsuz çalışıyor.
Veritabanını yükledim ve longtext ayarlarını yazı editörüyle yaptım.
Daha sonra veritabanımı kaldırıp yeniden import ettim.
 

Ozcan

0
İyinet Üyesi
Katılım
12 Mayıs 2007
Mesajlar
3,749
Reaction score
59
Konum
Antalya
Geçmiş olsun :) sorunu nasıl çözdüğünü biraz daha detaylı yazsaydın daha iyi olurdu.

Veri tabanını yüklerken sql dosyasındaki creat table komut satırının olduğu yerdeki varchar255 i longtext ile mi değiştirdin.
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
Geçmiş olsun :) sorunu nasıl çözdüğünü biraz daha detaylı yazsaydın daha iyi olurdu.

Veri tabanını yüklerken sql dosyasındaki creat table komut satırının olduğu yerdeki varchar255 i longtext ile mi değiştirdin.

Evet ama 3 tane uzun yazı ekledim kabul etti.
Şimdi nedense yine uzun yazıları kabul etmiyor. :)
 

Grafix

0
İyinet Üyesi
Katılım
16 Aralık 2006
Mesajlar
1,153
Reaction score
0
Konum
Bursa
ufuk,uzun yazıdan değil sanırım o içinde tırnak işaretleri var mı?

mysql_escape_string(); benzeri fonksiyonlar kullanıyor musun?
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
$testdb1 = mysql_query("INSERT INTO tozlukutu_kayit (medyaid, katid, isim, counter, tarih, puan, topoy, kaynak, kaynaklink, resimlink, urllink, sure, aciklama, etiket1, etiket2, etiket3, etiket4, etiket5) VALUES ('$rowkayitekle[1]', '$katidx', '$isimx', '0', '$tarihsys', '0', '0', '$kaynakx', '$kaynaklinkx', '$resimlinkx', '$urllinkx', '$surex', '$aciklamax', '$etiket1', '$etiket2', '$etiket3', '$etiket4', '$etiket5')",$dbconn);

Bu satırdan önce kırılan hangisi ise
var_dump($degisken);
kodunu ekleyip (degiskeni orjinal ismiyle degistirerek) ciktiyi kontrol eder misin, normal uzunlukta algiliyor mu PHP scripti oncelikle.
 

sonsuzhost

0
İyinet Üyesi
Katılım
28 Şubat 2006
Mesajlar
1,287
Reaction score
1
Konum
burdan yak
sunucuda php.ini dosyasında post_max_size değeri çok düşük olabilir bunuda kontrol et istersen
 

NeFuSa

0
İyinet Üyesi
Katılım
27 Aralık 2006
Mesajlar
1,414
Reaction score
15
Konum
İstanbul
Arkadaşlar yardımcı olan herkese çok teşekkür ederim. Uzun yazılar için ayrı bir php sayfası hazırladım, şimdi ekliyor. Diğer sayfamda niye eklemediğini bilmiyorum ama.
 

muratmoon

0
İyinet Üyesi
Katılım
5 Eylül 2008
Mesajlar
194
Reaction score
0
debug etseydin sorunu çok kolayca bulabilirdin. eğer başka bir yerden düzgün kayıt edebiliyorsan büyük ihtimalle gelen bilgiyi escape etmediğin için sorun yaşamışsındır.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst