şimdi ben de yüklenen resimlerdeki kötü kodları ayıklayacak bir şeyler arıyordum.. ilaç gibi geldi bana, sağolasın![]()
Buda undertraker'in multiquery fonksiyonun az gelişmiş :PPHP Kodu:# Resim güvenlik için, $_FILES ile gelen resim'i bu fonksiyondan geçirin geriye Boolean bir değer döner
# Resim'in bir hack girişimi olup olmadığını kontrol eder.
function resim_hack($resim)
{
global $uzanti;
$type = file_extension($resim);
if(!in_array($type, $uzanti))
return false;
$data = '';
if($data = @file_get_contents($resim) === FALSE)
if($data = @file($resim) === FALSE)
if($data2 = @fopen($resim, "r") === FALSE)
{
$data = fread($data2, 1024);
fclose($data2);
}
if(trim( $data ) == '')
return true;
if(!preg_match("#<html|<head|<script|<style|<body| <form|<input|<iframe|<object|<embed#si", $data))
return false;
return true;
}
PHP Kodu:# Query işleme alanı
function fetch(&$data, $tek = true)
{
$dizi = array();
if($tek)
{
$dizi = @mysql_fetch_array($data, MYSQL_ASSOC);
}
else
{
while($dizi[] = @mysql_fetch_array($data, MYSQL_ASSOC));
unset($dizi[ count($dizi) - 1 ]);
}
@mysql_free_result($data);
return $dizi;
}
şimdi ben de yüklenen resimlerdeki kötü kodları ayıklayacak bir şeyler arıyordum.. ilaç gibi geldi bana, sağolasın![]()
ölümle yaşamı ayıran çizgi
siyah'la beyaz'ı ayıramaz ki..
[önder'in odası..] || [arkadaşlarınıza değil, google'a sorun]
Rica ederim. Bu arada $uzanti array alır
$uzanti = array("gif", "png", "jpg", "jpeg");
gibi![]()
buda var tabi
PHP Kodu:function file_extension($filename)
{
return strtolower( substr(strrchr($filename, '.'), 1) );
}
test.php (v2.01) DOSYASINDA
yukaridaki satiri$current_page = $_GET['page']; // bulunulan sayfa
__________________________________________________ __________________________if (!isset($_GET['page'])) // bulunulan sayfa
$current_page = 1;
else $current_page = htmlspecialchars($_GET['page']);
satirlarini$last_page_text = 'Son Sayfa >>'; // son sayfa metni (resim de olabilir <img src="... gibi)
$kgPagerOBJ = & new kgPager();
$kgPagerOBJ -> pager_set($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text);
$last_page_text = 'Son Sayfa >>'; // son sayfa metni (resim de olabilir <img src="... gibi)
$pager_url_last="";
$kgPagerOBJ = & new kgPager();
$kgPagerOBJ -> pager_set($pager_url, $total_records, $scroll_page, $per_page, $current_page, $inactive_page_tag, $previous_page_text, $next_page_text, $first_page_text, $last_page_text, $pager_url_last);
ile degistirirsek uyarilar kalkmis olur. Ayrica
kgPager.class.php (v2.01) sayfasinda
seklinde butun if'lere else ile bos bir deger atatmis olursak fonksiyonlarda uyari vermeler kalkmis olur.// previous page
function previous_page ($previous_page_text, $pager_url_last) {
if ($this -> current_page > 1) {
$this -> previous_page = '<span><a href="'.$this -> url.($this -> current_page - 1).$pager_url_last.'">'.$previous_page_text.'</a></span>';
}else $this->previous_page='';
}
// next page
function next_page ($next_page_text, $pager_url_last) {
if ($this -> current_page < $this -> total_pages) {
$this -> next_page = '<span><a href="'.$this -> url.($this -> current_page + 1).$pager_url_last.'">'.$next_page_text.'</a></span>';
}else $this->next_page='';
}
// first page
function first_page ($first_page_text, $pager_url_last) {
if ($this -> current_page > 1) {
$this -> first_page = '<span><a href="'.$this -> url.'1'.$pager_url_last.'">'.$first_page_text.'</a></span>';
}else $this->first_page='';
}
// last page
function last_page ($last_page_text, $pager_url_last) {
if ($this -> current_page < $this -> total_pages) {
$this -> last_page = '<span><a href="'.$this -> url.$this -> total_pages.$pager_url_last.'">'.$last_page_text.' </a></span>';
}else $this->last_page='';
}
bide m.erin sayfama fonksiyonunda sayfa değişkeni toplam sayfa sayısından büyük girilirse boş geliyor , - değer girilirse hata veriyor ufacık bir kontrolle bunu giderebilirsin :
bu benim kendi yazdığım sayfalama dan alıntıdır
PHP Kodu:if ($this->Sayfa>$this->SayfaSayisi or $this->Sayfa<1)
{
$this->Sayfa=1;
}
@CUFC, bilgilendirme için teşekkürler. Şu sıra fazla ilgilenemiyorum, yakında toplu bir değerlendirme yapacağım![]()
valla arkadaşım okadar aradım durdum bir türlü bulamamıştım bu işlemi eline diline salık cok cok teşekürler ama bi yerde hatam var sayfanın alt köşede kılvar bölümüne bir değişken atayamaıyorum fonksiyon olarak atanmış güzel ama dışardan bir değişkeni kabul etmiyor mesela o yazının yerine $mesaj değişkenini koyuyorum emaile $mesaj olarak geliyor buna değişken ataması nasıl yapmalıyım
Merhaba arkadaşlar. Bugün manuel'den faydalanarak derleme bir sınıf yazdım
Amaç; sunucudaki resim dosyalarımızı (jpg, png, gif) boyutlandırarak ekrana basmak. Bazı arkadaşların işine yarayacağına inanıyorum.
kgResize.class.php
resize.phpPHP Kodu:<?PHP
########################################################################################################################
#
# KG Resizer v1.0
# Class Name : KG Resizer Class
# Version : 1.0
# Requirement : PHP4 >
# Build Date : March 8, 2008 - Saturday
# Developer : Muharrem ERİN (TÜRKİYE) - info@muharremerin.com - muharremerin.com - mhrrmrn.com - kisiselgunce.com
# Licence : GNU General Public License (c) 2008
#
########################################################################################################################
class kgResizer {
var $image_path = null;
var $not_found_image = null;
var $image = null;
var $resize_image = null;
var $image_info = null;
var $save_as_image_name = null;
function _image_control($image_path, $image, $not_found_image, $save_as_image_name) {
$this -> image_path = $image_path;
$this -> image = $image;
$this -> not_found_image = $not_found_image;
if ($this -> image != '') {
if (file_exists($this -> image_path.$this -> image)) {
$this -> resize_image = $this -> image_path.$this -> image;
$this -> save_as_image_name = $save_as_image_name;
}else{
$this -> resize_image = $this -> image_path.$this -> not_found_image;
$this -> save_as_image_name = $this -> not_found_image;
}
}else{
$this -> resize_image = $this -> image_path.$this -> not_found_image;
$this -> save_as_image_name = $this -> not_found_image;
}
$this -> image_info = getImageSize($this -> resize_image);
}
function _image_resize($default_width, $default_height, $image_bg, $width, $height) {
if ($this -> image_info['mime'] == 'image/jpeg' || $this -> image_info['mime'] == 'image/jpg') {
$old_image = imageCreateFromJPEG($this -> resize_image);
}elseif ($this -> image_info['mime'] == 'image/gif') {
$old_image = imageCreateFromGIF($this -> resize_image);
}elseif ($this -> image_info['mime'] == 'image/png') {
$old_image = imageCreateFromPNG($this -> resize_image);
}
if (empty($width)) { $width = $default_width; }
if (empty($height)) { $height = $default_height; }
$min_zoom = 1;
$max_zoom = 200;
$_x = $this -> image_info[0] / $width * 100;
$_y = $this -> image_info[1] / $height * 100;
if((100 - $_x) < (100 - $_y)) {
$_o = $_x;
}else{
$_o = $_y;
}
if($_o > 10000 / $min_zoom) { $_o = 10000 / $min_zoom; }
if($_o < 10000 / $max_zoom) { $_o = 10000 / $max_zoom; }
$new_x = $this -> image_info[0] / $_o * 100;
$new_y = $this -> image_info[1] / $_o * 100;
$pos_x = ($width - $new_x) / 2;
$pos_y = ($height - $new_y) / 2;
$new_image = imageCreateTrueColor($width, $height);
if (empty($image_bg)) { $image_bg = '255,255,255'; }
$bg_color_cols = explode(',', $image_bg);
$bg_color = imageColorallocate($new_image, trim($bg_color_cols[0]), trim($bg_color_cols[1]), trim($bg_color_cols[2]));
imageFill($new_image, 0, 0, $bg_color);
imageCopyResampled($new_image, $old_image, $pos_x, $pos_y, 0, 0, $new_x, $new_y, $this -> image_info[0], $this -> image_info[1]);
if ($this -> image_info['mime'] == 'image/jpeg') {
header("Content-type: image/jpeg");
header('Content-Disposition: inline; filename='.$this -> save_as_image_name);
imageJPEG($new_image);
}elseif ($this -> image_info['mime'] == 'image/gif') {
header("Content-type: image/gif");
header('Content-Disposition: inline; filename='.$this -> save_as_image_name);
imageGIF($new_image);
}elseif ($this -> image_info['mime'] == 'image/png') {
header("Content-type: image/png");
header('Content-Disposition: inline; filename='.$this -> save_as_image_name);
imagePNG($new_image);
}
imageDestroy($old_image);
imageDestroy($new_image);
}
function resizer_set($image_path, $not_found_image, $default_width, $default_height, $image_bg, $image, $width, $height, $save_as_image_name) {
$this -> _image_control($image_path, $image, $not_found_image, $save_as_image_name);
$this -> _image_resize($default_width, $default_height, $image_bg, $width, $height);
}
}
?>
test.phpPHP Kodu:<?PHP
require_once('kgResizer.class.php');
$kgResizer =& new kgResizer();
$kgResizer -> resizer_set('./', 'no_image.gif', '100', '75', '255,255,255', 'test.jpg', '300', '225', 'yeni_isim.jpg');
/*
resizer_set fonksiyonu argümanları (sırayla)
1 - kök dizin
2 - resim bulunamadığı takdirde gösterilecek resim
3 - varsayılan genişlik
4 - varsayılan yükseklik
5 - boyutlandırmadan sonra arta kalan kısımlardaki arkaplan rengi
6 - istenilen genişlik
7 - istenilen yükseklik
8 - tarayıcı üzerinde resim kaydedilirken hangi isimle kaydedilecek
*/
?>
resizer_set isimli fonksiyonun argümanlarını GET metoduyla kontrol ederek uygulamalarınızda kullanabilirsiniz.PHP Kodu:<html>
<head>
<title>kgResizer v1.0 Test Page</title>
</head>
<body>
<img src="resize.php" />
</body>
</html>
İyi çalışmalar.
Merahaba arkadaşlar.
Şu an bitirdiğim bir sınıfımı daha sizlerle paylaşmak istedim.
Sınıf formlarımızda kullandığımız güvenlik kodu vazifesini yerine getiriyor.
Uygulamanıza göre farklı arkaplan resimleri, fontlar, font bütüklükleri ve font renkleri tanımlayabiliyor, güvenlik kodunun uzunluğunu, karakter aralığını ve oluşturulacak güvelik kodunun genişlik, yükseklik gibi özelliklerini de belirleyebiliyorsunuz. Belirlediğiniz font, font büyüklüğü, renk, arkaplan gibi özellikler random fonsiyonlarla ekrana yansıtılıyor. Sonuç ekte bulunan resimdeki gibi.
Uygulamayı da ekten indirebilirsiniz. Sıkıştırılmış dosya içerisinde nasıl kullanılacağına dair bilgi edinmeniz için test dosyaları mevcut. Okunabilirlik az diyebilirsiniz. Fontları veya arkaplan resimlerini değiştirerek okunabilirliği arttırabilirsiniz. Umarım işine yarayacak arkadaşlar vardır, güle güle kullanın
İyi çalışmalar.
Türkçe Tarih
PHP Kodu:<?php
// Coded BY xfreex
function cevir($ay){
$sayi_ay = array("01","02","03","04","05","06","07","08","09","10","11","12");
$yazi_ay = array("Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık");
$ay = str_replace($sayi_ay,$yazi_ay,$ay);
return $ay;
}
$gun = date("d");
$m = cevir(date("m"));
$yil = date("Y");
echo "$gun $m $yil";
?>
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks