|
|
#1 (permalink) |
|
Üyelik Tarihi: 28.03.2004
Yer: -
Mesaj: 104
|
php ve css ile ilgili bir karışıklık
herkese merhaba veritabanında kayıtlı yazıları bir sayfada 10'ar 10'ar sıralıyorum. bir fonksiyon ile de diyelim ki sıralanan bu yazıları 100. karakterde kesip bir devamı linki koyuyorum. görünüm olarak da bütün bunlar bir tablo içerisinde. yani her yazı bir tablo içerisinde olduğundan bu tablo her sayfada 10 kez tekrarlanıyor. artık ben de tablosuz tasarım yapmaya gayret edeyim dedim ve tablo yerine div içerisine aldım bu tekrar eden alanı. sorun burda başladı. yazılardan herhangi birinin sayfada gösterilen bölümünde diyelim ki yazan kişi 96. karakterde bir <strong> tagi açmış ve 105. karakterde de kapamış ama yazı listeleyen sayfa gösterirken 100. karakterde bunu bölüyor ve tag kapatılmamış gibi algılanıp ardından gelen diğer yazıları bold yapıyor. bu durum tüm bunlar table içindeyken olmuyordu div içerisindeyken olmaya başladı. sormak istediğim şu CSS ile divlere uygulayıp bunu düzeltebileceğim bir stil var mı ya da PHP ile bunu bir şekilde çözebilir miyim ? bazen sorunu anlatmak da çözümünü düşünmek kadar zor oluyor. umarım anlatabilmişimdir. herkese kolay gelsin |
|
|
|
|
|
#2 (permalink) |
|
Üyelik Tarihi: 02.08.2001
Yer: istanbul
Yaş: 38
Mesaj: 1,542
|
Re: php ve css ile ilgili bir karışıklık
CSS'leşmek, herşeyi div' almak değildir. bu tür bir tabloyu <li> tag'ini biraz değiştirerek de pekiala çok düzgün bir şekilde sunabilirsin. ayrıca ortadan bölünme sorunun başka bir problemli veri kaydına işaret ediyor. 100. karakterde kesme yaparsan, doğal olarak düzenli bir tablo oluşturmak dert yumağı haline döner. problemin köküne nierek, verilerini kaydederken temiz kaydetmeni önerebilirim.
|
|
|
|
|
|
#3 (permalink) |
|
Üyelik Tarihi: 28.03.2004
Yer: -
Mesaj: 104
|
Re: php ve css ile ilgili bir karışıklık
karakter bölme ve kullanılan tagin bölümlenmiş kısımda açık kalabiliyor olması meselesi alanları <td> arasında kullanırken hiçbir sorun yaratmıyor. veri kaydında zaten sorun yok bir bütün olarak aldığımızı parçalayıp gösteriyoruz zaten. tablo yapısı da bozulmuyor div sevdasından ziyade tableın zor yönetilebilir yapısı canımı sıkan ve değiştirmeme neden olan aslında. <li> kullandığımda da sonuç aynı olacak gibi. table kullanırken sorun yaşanmıyor olmasının nedeni <td>ler ile ayrılıyor olmasından kaynaklanıyor sanırım. tabi görsel olarak sorun yok neticede sayfa kaynağında açılıp kapanmamış bir tag kalmış oluyor. sanırım bölümleme yapmaktan başka bir çözüm bulmaya doğru gidecek mesele
|
|
|
|
|
|
#6 (permalink) |
|
Re: php ve css ile ilgili bir karışıklık
Öncelikle tagleri kesinlikle kapatman gerekiyor. (alışkanlık ve standartlar)
Bunun yanı sıra genel olarak bu tip kısa ön bilgi ve devamı bulunan yazıların olacağı sistemlerde -bu bir haber sistemi veya makale sistemi olabilir- veritabanında "ozet" ve "metin" gibi iki alan bırakıp bu yazı eklenirken seçeneğe bağlı olarak bir özet yazılması veya yine yazarın kendi tercihine göre asıl metnin bir kısmını (özet alanını ister JavaScript ile ister PHP kontrolörleri ile karakter sınırlamasına sokarsın) kopyalar. Ve sadece belli bir kısmını kalınlaştırır. Ayrıca sormak istediğim tablolar ile nasıl bir sorun çıkıyor veya bu tag nasıl kapanıyor? Katmanlarla tagın kapanmaması dışında bir sorun var mı? Söylediğim belki sorduğunun cevabı değil ama operatör destekli bir mesajın ilgili yerleri denetlenebilir... Aslında PHP ve regex ile bu yapılamayacak birşey değil fakat işi sadece strong tagları olarak düşünmemek lazım. Merdivenli taglar olduğu zaman sorunlar daha çok artıyor. Bu tip sistemlerde her zaman ekstra bir özet alanı ayırmak akıllıcadır, hem yazıdan farklı bir "ilgi çekici" özet bilgiyi yazabilirsiniz hem bu tip bir teknik sorun çıkmasını engellemiş olursunuz. |
|
|
|
|
|
|
#7 (permalink) |
|
Üyelik Tarihi: 28.03.2004
Yer: -
Mesaj: 104
|
Re: php ve css ile ilgili bir karışıklık
@omer_balyali yazdıklarının hemen hepsi iç konuşma olarak içimde dönüyor 2 gündür.
bu bir makale sistemi. ilk yaptığımda dediğin gibi bir SQL yapısı vardı. yani kullanıcı yazısını hazırlarken önce özet alanını sonra devamını yazıyor veritabanında böyle tutuluyordu veri. gösterirken de yazıları sıraladığım alanda sadece özetleri sıralıyor ve devam linki gösteriyordum. bunu artık kullanmamamdaki sebep ise sistem için bir arama yapısı hazırlarken üşenmem oldu sanırım. tek sorgu ile aynı anda veritabanındaki yazıların başlık, içerik, yazar tarih gibi alanlarından sonuç gösteren bu arama sisteminde içerik sonuçlarını üretirken hem özet hem devam alanlarını sorgulamak ve bunları mantıklı bir şekilde göstermeye çabalamak (özet alanından ve devam alanından gelecek muhtemel aynı yazıya ait sonuçlar 2 farklı bulgu gibi sıralanacaktı sorguda muhtemelen ya da benzer başka bir durum çıkacaktı diyorum ya üşendim galiba) hantal bir yöntem gibi geldi bu nedenle tek alanda veriyi alıp bu veriyi sıraladığım yerde bölerek gösterme yolunu seçtim. bu daha mantıklıydı hem aramada sorgu performansından da kazanırım gibi geldi. sonuçta bu noktaya kadar geldi iş. bana içinden çıkılacaksa CSS ile çıkılır gibi geldi ama bulamadım herhangi birşey<td></td> içerisinde kalan veride diyelim <strong> tagi kapatılmasa bile altında oluşan yeni tablolara etki etmiyor fakat <div> ya da <li> ile biçimlediğinizde aynı alanı kapatılmamış bir <strong> sonrasında sorgu gereği oluşan aynı <div> ya da <li> ile biçimlendirilmiş alanların tümünü bold yapıyor. katmanlarla bundan başka bir soruna rastlamadım. opera Firefox ve ie ile denetliyorum sürekli. şimdilik standartların büsbütün dışında kalmak adına da olsa veriyi gösterdiğim div alanının içine söz konusu değişkenin ardından bir adet </em> ve </strong> ekledim (kullanıcı sadece bu ikisini kullanabiliyor) böylece bahsettiğim gibi ilk 100 karakter gösterilirken bunlardan biri açık kalırsa kapanmış oluyor zaten açılmadıysa da bu ikisi zaten birşeye yaramadan orda öylece duruyor. biliyorum fevkalde salakça
|
|
|
|
|
|
#8 (permalink) |
|
Re: php ve css ile ilgili bir karışıklık
Bence bir tane daha SQL sorgusu yapmak fazla dert olmaz. Hatta şöyle bir yararı olur, mesela bir makale var yeni başlayanlara PHP'e giriş yazısı.
Başlık: PHP'e Giriş Özet: PHP'e başlamak için yeni başlayanların PHP'nin sözdizimini, yapısını, çalışma mantığını ve genel kullanım alanını kısaca anlatan bir yazı. Acemi arkadaşlara faydalı olması ümidiyle... Metin: PHP, ilk zamanlar Personal Home Page ismiyle sonra kurumsallaşarak Hypertext PreProcessor olmuştur vs... Kişi " yeni başlayan acemi PHP" diye aradığı zaman özette bu çıkacak fakat yazının içinde bu kişiye "evet sevgili acemiler PHP şöyledir böyledir..." gibi bir hitapta bulunulmayacağı için sonuçlarda belki kıl payı kaçıracak. Hatta bunun yanında sana tavsiyem bir de "anahtar sözcükler" alanı oluştur ve arama sisteminde seçenek kutuları olsun. Orada; -Özetler içinde -Metin içinde -Anahtar sözcüklerde gibi seçenekler bulunsun ve bu sayede kullanıcı sorguyu kişiselleştirsin. Ve ön tanımlı olarak "metin içinde" seçili olur. Bu sayede kullanıcı bir değişiklik yapmazsa sadece 1 sorgu yapılır. İsterse 3 sorgu yapılır. Bu tip bir sistemin çalışması ve işlevini yerine getirmesi daha rahat.
__________________
i got the blues. |
|
|
|
|
|
|
#9 (permalink) |
|
Üyelik Tarihi: 28.03.2004
Yer: -
Mesaj: 104
|
Re: php ve css ile ilgili bir karışıklık
bunlar çok güzel çözümler evet fakat tüm bu hengame küçük basit bir weblog sitesi için aslında. site benim olsa bunları yapardım fakat sahibi sade kalmak kafa karıştırmamak hususunda kararlı. arama bölümünü hazırlarken özellikle böyle seçmeli alanlar falan istemediğini belirtti. zaten ben artık sorundan falan geçtim merak ettiğim tek şey CSS'de bu duruma uygun bi stil vs olup olmadığı. hiç olmadı td ler ile sıralarım yeniden çıkarım işin içinden başlarım katmana falan modundayım artık
|
|
|
|
|
|
#10 (permalink) |
|
Re: php ve css ile ilgili bir karışıklık
Hım, blog ise standartlara uymak "şart" olur.
![]() O halde seçenek koymadan gene bu üç alanla olayı halledebilirsiniz. Bence arama sistemi aksi takdirde pek fazla anlamlı olmaz. En azından bir nebze olsun daha önemli olur böyle.
__________________
i got the blues. |
|
|
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
Zoque'a hoşgeldiniz!