'php' kategorisindeki yazılar ↓
23 Mart 2008 — Kategoriler :php, rss-xml

Burada bahsettiğim PHP ile RSS okumak için kullanacağımız sınıflardan en kullanışlısı olan SimplePie ile Rss okumayı Eburhan burada detaylı bir şekilde anlattı. Ben de bu sınıf ile birden fazla RSS’i birleştirip zamanlarına göre sıralamaktan bahsetmek istiyorum.
Aşağıda rss birleştirip yayınlamamız için gereken kodlar var. Kodlar Simple Pie dökümantasyonundaki bu sayfadan alınmıştır.
// Simple Pie sınıfını ekliyoruz
require_once(’simplepie.inc’);
// Simple Pie sınıfı yaratıyoruz
$feed = new SimplePie();
//Birleştireğimiz RSS’leri array’e ekliyoruz.
$feed->set_feed_url(array(
‘http://feeds.feedburner.com/md-12/feed’,
‘http://feeds.feedburner.com/wordpress-tr’,
‘http://feeds.feedburner.com/Makeuseof’
));
$feed->init();
$feed->handle_content_type();
Burada dikkat etmemiz gereken nokta birleştirilen RSS’lerin tarih bölümlerinin olması (<pubDate>). Tarih bölümleri olmayan RSS’leri tarihe göre sıralamayacağı için onlar en üstte gözükecekler.
Aşağıdaki kodlarla da RSS’leri yazdırıyoruz.
<?php
foreach ($feed->get_items() as $item):?>
<h4><a href="<?php echo $item->get_permalink(); ?>">
<?php echo $item->get_title(); ?></a></h4>
<?php echo $item->get_content(); ?>
<p class="footnote">
Kaynak: <a href="<?php $feed = $item->get_feed(); echo $feed->get_permalink(); ?>">
<?php $feed = $item->get_feed(); echo $feed->get_title(); ?></a> | <?php echo $item->get_date('j M Y | g:i a T'); ?></p> <?php endforeach; ?>
Etiketler:
php ,
rss ,
simplepie
5 Ocak 2008 — Kategoriler :api, google, php
Buradaki yazıda Google’ın Chart (Grafik) api servisini sunduğunu yazmıştım. Şimdi ise bu servis için oluşturulmuş iki php sınıfından bahsedicem.
İlki GphpChart
Buradan indirebileceğimiz bu sınıfın en önemli özelliği ise dönen resimleri cache yapabilmesi.Böylece aynı grafiği ikinci kez istediğimizde imajı cache’den çağırarak google’ın günlük 50.000 çağırma sınırını aşmamamızı sağlıyor.
Bu sınıf sadece LXY garafiklerini desteklemiyor. Aşağıda örnek kullanımı mevcut.
$data = array('01/12' => 1245,'02/12' => 895, '03/12' => 956, '04/12' => 1356,'05/12' => 1542,'06/12' => 1423);
$GphpChart = new GphpChart('lc'); // 'lc' line chart (çizgi grafik)
$GphpChart->title = 'Daily Visitors'; // grafiğin üzerindeki başlık
$GphpChart->add_data(array_values($data)); // değerleri ekliyoruz
$GphpChart->add_labels('x',array_keys($data)); // x değerleri (grafiğin alt bölümündeki değerler)
$GphpChart->add_labels('y',array(0,500,1000,1500)); // y değerleri (grafiğin sol bölümündeki değerler)
echo $GphpChart->get_Image_String();

İkincisi ise gchartphp
Buradan indirebileceğiniz bu sınıf ilkine göre daha az grafik kapsıyor. lxy, venn, ve scatter-plotlar destelemediği grafikler. Sınıfı yazan arkadaş her grafik için ayrı bir sınıf oluşturmuş.
$piChart = new gPieChart;
$piChart->addDataSet(array(112,315,66,40));
$piChart->valueLabels = array("first", "second", "third","fourth");
$piChart->dataColors = array("ff3344", "11ff11", "22aacc", "3333aa");

Etiketler:
16 ,
api ,
chart ,
google ,
grafik
15 Kasım 2007 — Kategoriler :php
Wordpress’i IIS Server üzerinde kurarken .htaccess gibi bir dosyamız olmadığı için permalink (linklerin klasör şeklinde olması durumu) konusunda sıkıntılar yaşabiliyoruz.
Bu sorunu aşmak için 404 hata sayfasını 404.php gibi bir dosya yapıp (burada tabi host firmamızın bize hata sayfasını düzenleme olanağı tanıması gerekmekte) aşağıdaki kodları bu sayfaya yazmamız gerekiyor.
<?
$qs = $_SERVER['QUERY_STRING'];
$_SERVER['REQUEST_URI'] = substr($qs, strpos($qs, ‘:80′)+3);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include(’index.php’);
?>
Wordpress admin panelinden Tercihleri seçip Kalıcı Bağlantılar menüsünden Kalıcı Bağlantıları aktif hale getirmeyi de unutmamak lazım tabi.
Etiketler:
404 ,
iis server ,
permalink ,
wordpress
17 Ekim 2007 — Kategoriler :php, web

Yukarıdakine benzer okunabilirlilikte captcha’ların olduğunu düşünerek bu özellik olmadan spam’i engellemek için şu adreste çok güzel bir yöntem önerilmiş.
Kısaca şöyle çalışıyor bu mekanizma:
Kullanıcıya gözükmeyen bir input oluşturururuz eğer bu input dolu gelirse bu formun bir spam robotu tarafından doldurulduğuna kanaat getiririz. Örnek vermek gerekirse;
İsmini (name değişkenin içindeki parametre) herhangi bir şey koyabileceğimiz bir input oluştururuz.
<input name="deneme" type="text" value=""/>
Harici stil sayfasında veya sayfanın yukarısındaki stil kısmına aşağıdaki gibi bir sınıf oluştururuz.
<style>
.sakla {
display: none;
}
</style>
Sonra input’u kullanıcıdan saklarız.
<div class="sakla"><input name="deneme" type="text" value=""/></div>
Form onaylandıktan sonrada deneme isimli inputun boş olması gerektiğini test ederiz. Aşağıda php ile yapılmış bir örnek var:
if (strlen(trim($_POST['deneme'])) > 0){
//spam bir mesajdır reddet }
Böylece basit bir yöntem ile captcha kullanmadan spam’i engellemiş oluruz.
Etiketler:
16 ,
captcha ,
form ,
spam
18 Haziran 2007 — Kategoriler :php

8 Haziran 2007 günü TÜBİTAK-UEKAE tarafından düzenlenen BT Güvenlik Günü Konferansı Sunumlarına aşağıdan ulaşabilirsiniz. 3. sunumda PHP ile guvenli kod
yazma konusunda bir uygulama da gosterilmiş.
Ulusal Bilgi Güvenliği Programı
Kamu Kurumu BT Güvenlik Öyküsü
Katmanlı Güvenlik Anlayışına Uygulamalı Bir Bakış
18 Mayıs 2007 — Kategoriler :php
Hostumuzun (bizim değil tabi uzaktan para ile kiraladığımız hostdan bahsetmekteyim) php ayarlarını değiştiremediğimiz zamanlarda hata mesajı ayarlarını dosyamıza iki satırcık kod ekleyip düzeltebiliyoruz.
Eğer hata mesajlarını almak istiyorsak
error_reporting(E_ALL);
ini_set('display_errors', '1');
istemiyorsak da
error_reporting(0);
ini_set('display_errors', '0');
kodlarını sayfamıza ekleyerek (overriding deniyor galiba) gerekli düzenlemeyi yapıyoruz.
7 Mayıs 2007 — Kategoriler :php
Php ile rss beslemesi okumak (parse) için 3 güzel alternatifimiz var.
1.lastrss
2.Magpie RSS
3.SimplePie
Simple Pie ve Magpie RSS atom beslemelerini de okurken Simple Pie’ın türkçe karakter desteği var.
20 Şubat tarihli ekleme:
Artık bir dördüncüsünü de ekleyebiliriz bu listeye. O da Zend Framework ile gelen Zend_Feed.
Etiketler:
16 ,
rss