10,120 yorum yapıldı
RSS Aboneliği
Friendfeed
Youtube
E-posta

PHP

Rapid PHP Editor’den Türk kullanıcılara şahane bir kıyak

Yazar: | 6 Nisan 2012 Cuma 3:01


World’s fastest PHP editor (Dünyanın en hızlı PHP editörü) sloganıyla dağıtılan Blumentals Rapid PHP Editor, uzun zamandır takip ettiğim, bir kaç kez deneme sürümünü kurup gerçekten sahip olacağım günü iple çektiğim sağlam text editörlerinden biri.

On saatte açılan hantal editörler kesinlikle bana göre değil. Açılmasını beklemeye tahammül edebildiğim yeryüzündeki tek yazılım Photoshop’tur, o da büyüğümüz sayılır saygımız sonsuzdur. Bana göre PHP editörü dediğin Notepad gibi tıklandığı an açılmalı, sağolsun Rapid PHP’de aynen söylediği gibi tıklandığı anda açılıyor. İşlevsel açıdan da, profesyonelleri bilmem ama orta düzey bir PHP-sever için fazlasıyla tatmin edici olduğunu söyleyebilirim.

Konumuza gelecek olursak; bugün sevgili mesai arkadaşım, PHP gurusu Mesut’a bu programın reklamını yapmak üzere sitelerine girdim ve tepedeki “Special Offer – only in Turkey” (Özel teklif – sadece Türkiye için) ifadesi dikkatimi çekti, hemen altında da Rapid PHP Editor 2011′e SMS yoluyla ve sadece 10 TL karşılığı sahip olabileceğim yazıyordu. Normalde programın kişisel kullanım lisansının 29.85 Euro, yani 70.40 Türk Lirası olduğunu düşününce bu bana harbiden fevkaladenin fevkinde bir teklif gibi geldi. Yazinin devamini okuyun »

jQuery dosya yükleme scripti (jQuery file uploader): Uploadify

Yazar: | 11 Ocak 2012 Çarşamba 4:10


Uploadify dosya yükleme işlemleri konusunda size büyük kolaylık sağlayacak, tamamen özelleştirilebilir bir jQuery plugini. JavaScript ve ActionScript’in maharetlerini kullanan bu plugin sayesinde sitenize/projenize dinamik olarak tekli ve çoklu dosya yükleme özelliği kazandırabilir, ziyaretçilerinize gelişmiş bir web deneyimi sağlayabilirsiniz.

Geliştiricinin ağzından scriptin sahip olduğu bazı özellikler:

  • jQuery Altyapısı
  • Çoklu Dosya Yükleme Özelliği
  • SWFObject Entegrasyonu
  • Popüler Sunucu Taraflı Yazılım Dilleriyle Uyumluluk
  • Tamamen Özelleştirilebilir (.FLA Dahil)
  • Geniş Destek Topluluğu
  • Kapsamlı Örnekler ve Dökümantasyon

Yazinin devamini okuyun »

PHP – Üç harfli basit güvenlik kodu (captcha) scripti

Yazar: | 14 Nisan 2011 Perşembe 21:50
Kategori: PHP, Web Tasarım

PHP Script
Ekrana sadece 3 harf bastıran oldukça basit bir güvenlik kodu (capthca) scripti. Aşağıdaki kodları capthca.php ismiyle kaydedin ve kullanmak istediğiniz formdan <img src="capthca.php" alt="" /> şeklinde çağırın.

Script güvenlik kodunu $_SESSION['capthca'] ismiyle sessiona kaydeder ve kullanıcının formdan girdiği kodu bu veriyle karşılaştırarak güvenlik kontrolü sağlayabilirsiniz.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
session_start();

$karakter = "3"; // kaç karakter?

$harfler = str_split('ABCDEFGHJKLMNPRSTUVXYZ');
shuffle($harfler);

$metin = implode(' ', array_slice($harfler, 0, $karakter));
$font = "fonts/Harabara.ttf";

$_SESSION['capthca'] = str_replace(' ','',$metin);

header("Content-type: image/png");
$im = @imagecreate(56, 22) or die ("Guvenlik kodu resmi olusturulamadi!");

imagecolorallocate($im, 13, 13, 13);

$color1 = imagecolorallocate($im, 235, 231, 63); //metin rengi
$color2 = imagecolorallocate($im, 240, 240, 240);
$color3 = imagecolorallocate($im, 153, 23, 79);

imageline($im, mt_rand(0,55), mt_rand(0,20), mt_rand(0,55), mt_rand(0,20), $color2);
imageline($im, mt_rand(5,55), mt_rand(9,20), mt_rand(3,55), mt_rand(8,30), $color3);
imageline($im, mt_rand(0,55), mt_rand(0,40), mt_rand(1,15), mt_rand(1,50), $color3);

imagettftext($im, 16, 2, 2, 19, $color1, $font, $metin);
imagepng($im);
imagedestroy($im);

?>

Harbara fontu: Download

Harika bir ücretsiz metin editörü: PsPad

Yazar: | 16 Şubat 2011 Çarşamba 22:09


PsPad kullanmaya başladığım günden beri vazgeçilmezlerim arasında yer almayı başaran, PHP, C++, JavaScript gibi daha bir çok programlama dili ile uyumlu şahane bir editör. Yapımcı (Jan Fiala) resmen 4.2 MB’lık bir kurulum dosyasına sığdırılabilecek tüm temel özellikleri göz önünde bulundurmuş ve ortaya proje yönetimi için bile kullanılabilecek son derece kullanışlı, hızlı bir program çıkmış.

Program, arayüz konusunda biraz eksik gibi görünse de şahsen kullanım alışkanlıklarımı fazlasıyla karşıladığını söyleyebilirim. Hatta FTP desteği gibi kendi kulvarındaki programlarda pek rastlanmayan bir çok ek özelliğe sahip. Eğer herhangi bir şekilde kod yazmakla ilgileniyorsanız bu programa mutlaka bir şans tanımanızı öneririm. Yazinin devamini okuyun »

PHP ile telefon & GSM numarası kontrol etme ve formatlama fonksiyonu

Yazar: | 27 Kasım 2010 Cumartesi 3:18

PHP Script
Huzurlarınızda yine çok işinize yarayacağını düşündüğüm bir script daha. Kendim yazdım diye söylemiyorum gerçekten basit ve bir o kadar işlevsel bir fonksiyon oldu. Özellikle toplu SMS apileri kullanan arkadaşların işini fazlasıyla kolaylaştıracağından eminim.

Ziyaretçilerden cep veya sabit telefon numarası istediğiniz ve herhangi bir sebeple tarayıcı bazlı kontrol kullanmadığınız (javascript vb.) bir kayıt formunuz olduğunu düşünün. Telefon numarası kriterlerini yıldızlı ifadelerle belirtmiş olmanıza rağmen yine de bir çok ziyaretçi uyarılarınıza kulak asmayacak ve ısrarla abuk subuk girişler yapmaya devam edecektir. Bu fonksiyon işte tam da bu noktada devreye giriyor ve şayet girilen numarada kullanılabilir veriler varsa düzenleyerek olması gerektiği hale getiriyor.

Fonksiyon tarafından adam edilip düzenlenebilir bazı hatalı giriş örnekleri:
+090-0555-666-44-55
90/0555/666*44-55
(+090)-(555)(666)(4455)
(090)-(+0555)-(666-4455)

Aslında numara +0(90&555/44%42{2(33 şeklinde ultimate bir yanlışlıkla da yazılmış olabilir, şayet ülke kodu (90) ve 10 haneli telefon numarası bir şekilde girilmişse fonksiyon numarayı algılıyor ve çıktısını aşağıdaki biçimde veriyor:

+905554442233

PHP – Telefon & GSM numarası kontrol ve formatlama fonksiyonu

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
// Telefon & GSM numarası kontrol ve formatlama
// Caner ÖNCEL - http://www.egonomik.com/

function telefon($text) {
    $text  = preg_replace("/[^0-9]/", "", $text);
    $first = substr("$text",0,1);
    if($first == "0") { $text = substr($text,1); }

    $doksan = substr("$text",0,2);
    if($doksan != "90") {
        $new_telefon = "Gecersiz: Ulke kodu TR degil."; }
    else {
        $numara = substr($text,2);
        if(substr("$numara",0,1) == "0") {
            $numara = substr($numara,1); }

        if(strlen($numara) != "10") {
            $new_telefon = "Gecersiz: TR telefon formatina uygun degil (901112223344)"; }
        else {
            $new_telefon = "+$doksan$numara"; }
    }

    return $new_telefon;
}

// Kullanım
$telefon_numarasi = "090(0555)-444-33-22";
echo telefon($telefon_numarasi); // çıktı: +905554443322

?>

PHP Rastgele Şifre Üretici (PHP Random Password Generator)

Yazar: | 27 Kasım 2010 Cumartesi 1:45


Scriptimiz 3 ayrı zorluk seviyesine göre belirlenen uzunlukta rastgele şifreler üretiyor, örneklerini cPanel gibi uygulamalardan hatırlayabilirsiniz.
1. Seviye: Küçük harf / rakam kombinasyonu
2. Seviye: Küçük-büyük harf / rakam kombinasyonu
3. Seviye: Küçük-büyük harf / rakam / özel karakter kombinasyonu

Parkta, bahçede, piknikte gönül rahatlığıyla kullanabilir, sevdiklerinize doğum günü armağanı olarak gönderebilirsiniz. Ayrıca acil olarak rastgele üretilmiş şifrelere ihtiyaç duyduğunuz her an bu scripti kullanmak üzere http://egonomik.com/sifre/ adresini ziyaret edebilirsiniz.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
if($_GET['len'] != "" && $_GET['len'] >= "3") {
    $uzunluk = $_GET['len']; }

else {
    $uzunluk = "6"; }

function generatePassword($length=6,$level=2){

   list($usec, $sec) = explode(' ', microtime());
   srand((float) $sec + ((float) $usec * 100000));

   $validchars[1] = "0123456789abcdfghjkmnpqrstvwxyz";
   $validchars[2] = "0123456789abcdfghjkmnpqrstvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   $validchars[3] = "0123456789_!@#$%&*()-=+/abcdfghjkmnpqrstvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_!@#$%&*()-=+/";

   $password  = "";
   $counter   = 0;

   while ($counter < $length) {
     $actChar = substr($validchars[$level], rand(0, strlen($validchars[$level])-1), 1);

     // All character must be different
     if (!strstr($password, $actChar)) {
        $password .= $actChar;
        $counter++;
     }
   }

   return $password;
}


echo '
<div class="container">
<div class="box">
<fieldset>
<legend><img src="images/1.png"/></legend>
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"1").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"1").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"1").'" onclick="select();" /> <br />
</fieldset>
</div>

<div class="box">
<fieldset>
<legend><img src="images/2.png"/></legend>
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"2").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"2").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"2").'" onclick="select();" /> <br />
</fieldset>
</div>

<div class="box">
<fieldset>
<legend><img src="images/3.png"/></legend>
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"3").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"3").'" onclick="select();" /> <br />
<input class="pass" type="text" value="'
.generatePassword($uzunluk,"3").'" onclick="select();" /> <br />
</fieldset>
</div>

<div style="clear:both; margin-bottom: 20px"></div>

<form name="sifre" action="'
.$PHP_SELF.'" method="GET">
<b>Yeni şifre oluştur</b><br />
Uzunluk:
<select name="len" onchange="document.sifre.submit();">'
;

for($i=3; $i< =15; $i++) {
    echo '<option'; if($uzunluk == "$i") { echo ' selected'; } echo '>'.$i.'';
}

    echo '</select>
    <input type="submit" value="Yeni" style="cursor:pointer" />
</form>

<div class="dipnot">
Egonomik.com 2010 | <a href="http://www.egonomik.com/" title="Egonomik Anasayfa">Anasayfa</a> | <a href="http://www.egonomik.com/2010/11/php-rastgele-sifre-uretici-php-random-password-generator/" title="PHP Rastgele Şifre Üretici (PHP Random Password Generator)">Konuya Git</a> | <a href="http://www.egonomik.com/script/php-sifre-olusturucu/php-sifre-olusturucu.rar" title="PHP Random Password Generator Download">Bu Scripti İndir</a>
</div>

'
;

Yazinin devamini okuyun »

PHP Thumbnail (küçük resim) oluşturma scripti

Yazar: | 28 Ekim 2010 Perşembe 22:27
Kategori: PHP, Web Tasarım

PHP Script
Yine oldukça basit ve kullanışlı bir scriptten bahsedeceğim. GD kütüphanesi kullanan scriptimiz, get methodu ile gönderilen parametreler doğrultusunda küçük resimler (thumbnail) oluşturmaya yarıyor.

Kullanılabilir parametreler:
img = resim (path/img.jpg veya http://site.com/img.jpg)
w = Genişlik
h = Yükseklik
yuzde (opsiyonel) = Şayet tanımlanırsa (ör: percent=1) resim yükselik ve genişlik değerleri yüzde olarak değiştirilir (%50 gibi)
oran (opsiyonel) = Şayet tanımlanırsa (ör: oran=1) resim orantılı olarak küçültülür, aksi halde get ile gönderilen ölçüler baz alınır.

Dosyayı thumb.php gibi bir isimle kaydederseniz, kullanım biçimi aşağıdaki gibi olacaktır:
thumb.php?img=resim.jpg&w=150&h=150&oran=1&percent=1

PHP kodları:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
header ("Content-type: image/jpeg");

$img = $_GET['img'];
$yuzde = $_GET['yuzde'];
$oran = $_GET['oran'];
$w = $_GET['w'];
$h = $_GET['h'];

// get image size of img
$x = @getimagesize($img);
// image width
$sw = $x[0];
// image height
$sh = $x[1];

if ($yuzde > 0) {
    // calculate resized height and width if percent is defined
    $yuzde = $yuzde * 0.01;
    $w = $sw * $yuzde;
    $h = $sh * $yuzde;
} else {
    if (isset ($w) AND !isset ($h)) {
        // autocompute height if only width is set
        $h = (100 / ($sw / $w)) * .01;
        $h = @round ($sh * $h);
    } elseif (isset ($h) AND !isset ($w)) {
        // autocompute width if only height is set
        $w = (100 / ($sh / $h)) * .01;
        $w = @round ($sw * $w);
    } elseif (isset ($h) AND isset ($w) AND isset ($oran)) {
        // get the smaller resulting image dimension if both height
        // and width are set and $oran is also set
        $hx = (100 / ($sw / $w)) * .01;
        $hx = @round ($sh * $hx);

        $wx = (100 / ($sh / $h)) * .01;
        $wx = @round ($sw * $wx);

        if ($hx < $h) {
            $h = (100 / ($sw / $w)) * .01;
            $h = @round ($sh * $h);
        } else {
            $w = (100 / ($sh / $h)) * .01;
            $w = @round ($sw * $w);
        }
    }
}

$im = @ImageCreateFromJPEG ($img) or // Read JPEG Image
$im = @ImageCreateFromPNG ($img) or // or PNG Image
$im = @ImageCreateFromGIF ($img) or // or GIF Image
$im = false; // If image is not JPEG, PNG, or GIF

if (!$im) {
    // We get errors from PHP's ImageCreate functions...
    // So let's echo back the contents of the actual image.
    readfile ($img);
} else {
    // Create the resized image destination
    $thumb = @ImageCreateTrueColor ($w, $h);
    // Copy from image source, resize it, and paste to image destination
    @ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh);
    // Output resized image
    @ImageJPEG ($thumb);
}

?>

Yazinin devamini okuyun »

WordPress için Kimler online “Who Is Online” eklentisi

Yazar: | 24 Ekim 2010 Pazar 17:28


Who Is Online Egonomik’te de kullandığım, siteye bağlı ziyaretçi ve üyeleri ayrı ayrı listeleyen oldukça başarılı ve ufak bir WordPress eklentisi. Kullanıcıların sitede ne kadar süre kaldığını, kaç sayfa görüntülediğini ve o an hangi sayfada bulunduğunu göstermek gibi hünerleri var. Ayrıca admin panelinize giriş yaptığınızda sizi aşağıdaki gibi hızlı bir istatistik kutucuğuyla karşılıyor:

Bana göre sadece iki eksikliği var; birincisi referer kaydı tutmuyor olması. Yani ziyaretçilerin sitenize hangi kanal aracılığıyla ulaştıklarını göstermiyor. Ben bu bilgi için ayrı bir istatistik eklentisi kullandığımdan çok fazla dert etmiyorum, hem veritabanını yok yere şişirmenin manası yok. Ancak ikinci özellik gerçekten gerekli; online kullanıcı bilgisini sitenin front-end bölümünde görüntülemek. Bu mevzunun da üstesinden eklentiyi biraz mıncıklayarak geldim.

Who Is Online eklentisini şu adresten indirebilirsiniz. Şayet eklentiyi kurduktan sonra online kullanıcı bilgisini admin paneli haricinde sayfanızın ön yüzünde de görüntülemek isterseniz aşağıdaki geliştirme işinizi görecektir. Yazinin devamini okuyun »

PHP ile MP3 dosyalarının ID3v2 taglarını okumak

Yazar: | 12 Ekim 2010 Salı 16:47

PHP Script
Daha önce şu yazımızda MP3 dosyalarının ID3v2 taglarını okuyan bir PHP sınıfından bahsetmiştik. Kullandıkça bu sınıfın işi yok yere uzattığını ve zaman zaman çeşitli karakter kodlama hatalarına sebep olduğunu gözlemledim. Ufak bir araştırmadan sonra gördüm ki sağolsun de77 isimli vatandaş bu işi çok daha kısa sürede halleden, daha basit ve kullanışlı bir sınıf hazırlamış, ayrıca direkt id3.org sitesinde öneriliyor.

PHP ID3v2 class (Id3v2.php)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<?php

// Author       : de77
// Website      : www.de77.com
// License      : MIT (http://en.wikipedia.org/wiki/MIT_License)
// Class desc   : http://de77.com/php/php-class-how-to-read-id3v2-tags-from-mp3-files

//------------------------------------------------------------------------------
//     If you like this class- please leave a comment on my site, thanks!
//------------------------------------------------------------------------------

class Id3v2 {  
    public $error;
   
    private $tags = array(
        'TALB' => 'Album',
        'TCON' => 'Genre',
        'TENC' => 'Encoder',
        'TIT2' => 'Title',
        'TPE1' => 'Artist',
        'TPE2' => 'Ensemble',
        'TYER' => 'Year',
        'TCOM' => 'Composer',
        'TCOP' => 'Copyright',
        'TRCK' => 'Track',
        'WXXX' => 'URL',
        'COMM' => 'Comment'
        );
         
    private function decTag($tag, $type) {

        //TODO- handling of comments is quite weird
        //but I don't know how it is encoded so I will leave the way it is for now

        if ($type == 'COMM') {
            $tag = substr($tag, 0, 3) . substr($tag, 10);
        }

        //mb_convert_encoding is corrupted in some versions of PHP so I use iconv
        switch (ord($tag[2])) {
            case 0: //ISO-8859-1
                    return iconv('UTF-8', 'ISO-8859-1', substr($tag, 3));
            case 1: //UTF-16 BOM
                    return iconv('UTF-16LE', 'UTF-8', substr($tag, 5));
            case 2: //UTF-16BE
                    return iconv('UTF-16BE', 'UTF-8', substr($tag, 5));
            case 3: //UTF-8
                    return substr($tag, 3);
        }
        return false;
    }
   
    public function read($file) {

        $f = fopen($file, 'r');
        $header = fread($f, 10);
        $header = @unpack("a3signature/c1version_major/c1version_minor/c1flags/Nsize", $header);

        if (!$header['signature'] == 'ID3') {
            $this->error = 'Bu dosyada ID3 v2 tagı bulunmuyor.';      
            fclose($f);
            return false;      
        }

        $result = array();
        for ($i=0; $i&lt;22; $i++)  {
            $tag = rtrim(fread($f, 6));
           
            if (!isset($this->tags[$tag])) break;
           
            $size = fread($f, 2);
            $size = @unpack('n', $size);
            $size = $size[1]+2;
   
            $value = fread($f, $size); 
            $value = $this->decTag($value, $tag);
   
            $result[$this->tags[$tag]] = $value;
        }
       
        fclose($f);
        return $result;
    }  
}

?>

Yazinin devamini okuyun »

W3C XHTML/Strict standartları ve uygun yeni pencere linki oluşturmak

Yazar: | 8 Eylül 2010 Çarşamba 23:32


Egonomik için yeni bir tema tasarlamayı düşünüyordum, bu düşüncemin altında kullanıcılardan gelen isteğin yanında (ki bu isteğin şimdilik yersiz olduğu kanaatine vardık) bir de şu anki temanın XHTML/Strict DTD (Document Type Defination) standartlarına uymuyor olması yatıyordu. Aslında bu standartlara şimdiye kadar çok fazla itibar göstermiyordum, gerçi Google’ın bile uygunluk testinden geçemediğini düşününce hala da pek önemsediğim söylenemez, ancak ne varki iyi bir tasarımcı olarak anılmak istiyorsanız çağa ayak uydurmanız ve oyunu kurallarına göre oynamanız şart.

Bu standartları belirleyen vatandaşlar iyi hoş bir çok güzellik yapmışlar ancak bazı konularda akıllarından tam olarak ne geçtiğini tahmin etmek zor. Ben özellikle sıklıkla ve severek kullandığımız target=”_blank” ifadesini kaldırmış olmalarına ifrit oldum. Bazı kaynaklara göre bu ifadenin tarayıcının ileri/geri fonksiyonlarını devre dışı bırakması kullanıcıyı zor durumda bırakıyormuş, haliyle standartlar arasında yer alması pek mantıklı değilmiş. Yani eğer kullanıcı o linki yeni bir pencerede açmak istiyorsa bunu kendi iradesiyle yapmalıymış. Evet bu aslında bir yere kadar doğru bir düşünce fakat hal vaziyet bu diye site sahibinin suçu ne? Yani tarayıcı ve internet kullanımına tam anlamıyla vakıf olmayan, “Tebrikler 100.000 TL Kazandınız!” türü reklamlara bile tıklayan ziyaretçiyi (anneler/babalar/dayılar), hiç hazzetmediği fakat yine de bağlantı vermek zorunda kaldığı siteye yönlendirirken (örn: Mynet) kaybedecek olması tartışılır bir durum değil mi? Hayır gidip popup açtıran kodlar için aynı yorumu yapsalar amenna ama bu olayın bana göre anlaşılabilir bir tarafı yok. Neticede ortada standartlara uygun sabit bir alternatif olmamasına rağmen siz dilediğiniz zaman javascript yardımıyla yeni bir pencere açtırabiliyor ve uygunluk testinden rahatlıkla geçebiliyorsunuz. Yani eğer o an kullanacağınız linkin SEO’ya uygun olup olmaması önemli değilse ve kulağınızı biraz uzun yoldan tutmaya razıysanız aşağıdaki gibi bir kod işinizi rahatlıkla görüyor:

1
<a href="javascript:void(0);" onclick="window.open('http://www.google.com/');">Google Aç</a>

Yazinin devamini okuyun »