Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Her harfe resim gösterme....

Konu, 'PHP' kısmında Pro[Ge] tarafından paylaşıldı.

  1. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    Merhabalar,

    bir konuda açıkçası tıkandım. Yarım saattir düşünüyorum bir çözüm yolu bulamadım.

    Mesela;

    $kelime = 'agsa';

    olsun. Ben burada her harf için bir resim yazdırmak istiyorum;

    agsa için

    a - <img src="sayac/a.gif">
    g - <img src="sayac/g.gif">
    s - <img src="sayac/s.gif">
    a - <img src="sayac/a.gif">

    Bunu nasıl yapabilirim ?
     
  2. deathisonitsway

    deathisonitsway x-coder

    Kayıt:
    7 Kasım 2007
    Mesajlar:
    6,145
    Beğenilen Mesajlar:
    6
    Meslek:
    php-coder
    Şehir:
    abroad
    substr ile cek ilk harfi...image fonksiyonlarıyla ne yapmak istiyorsan yap...ilk harfi cekip resim uzerine onu mu yazmak istiyorsun
     
  3. ozguraybar2

    ozguraybar2 Aktif Üye

    Kayıt:
    17 Eylül 2007
    Mesajlar:
    473
    Beğenilen Mesajlar:
    0
    Meslek:
    Öğrenci
    Şehir:
    Denizli
    bir function yazacaksın
    str_replace yani
     
  4. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    İlk harf değil tüm harfleri resme çevireceğim. Elimde tüm harflerin resimleri var. a.gif, b.gif şeklinde...

    Ben de denem yazılınca bunu <img src="sayac/d.gif"><img src="sayac/e.gif"><img src="sayac/n.gif"><img src="sayac/e.gif"><img src="sayac/m.gif"><img src="sayac/e.gif"> ye çevirecek..

    Bu arada özgür çok teşekkürler :) str_replace yeni aklıma geldi hemen bir fonk. yazıyorum...
     
  5. akyor35

    akyor35 Daimi Üye

    Kayıt:
    7 Nisan 2005
    Mesajlar:
    1,510
    Beğenilen Mesajlar:
    0
    Şehir:
    İstanbul
    PHP:
    <?
    $metin='deneme';

    for(
    $i=0;$i<strlen($metin);$i++){
        
        echo 
    '<img src="'.$metin[$i].'.gif">';
    }
    ?>
     
  6. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    $akyor35

    Gerçekten çok teşekkürler senin verdiğini kullanıyorum...

    Bu arada kafama bir şey takıldı eğer kelime içerisinde boşluk varsa onu nasıl resim olmadan yazdırabilirim ?

    Ve bir de for döngüsü içerisinde gelen harfi büyük-küçük harf olarak nasıl ayırabilirim ?
     
  7. akyor35

    akyor35 Daimi Üye

    Kayıt:
    7 Nisan 2005
    Mesajlar:
    1,510
    Beğenilen Mesajlar:
    0
    Şehir:
    İstanbul
    php ile o biraz zor gibi gözüküyor. çünkü yapı kontrol dereceleri temelini aldığı c ye göre çok düşük.

    boşluk olayı ise ;
    PHP:
    <? 
    $metin='deneme yaptık'

    for(
    $i=0;$i<strlen($metin);$i++){ 
        echo (
    $metin[$i] != ' ' '<img src="'.$metin[$i].'.gif">' '<img src="bos.gif">' ); 

    ?> 
     
  8. Sniper

    Sniper Daimi Üye

    Kayıt:
    21 Haziran 2004
    Mesajlar:
    2,732
    Beğenilen Mesajlar:
    0
    Meslek:
    Webmaster
    Şehir:
    İstanbul
    İstediğin şey daha kısa kodlarla ve döngü kullanmadan da yapılabilir:

    PHP:
    <?php
    $kelime 
    'agsa jenerator';
    $kelime preg_replace('/([a-zA-Z])/','<img src="sayac/$1.gif">',$kelime);
    echo(
    $kelime);
    ?>
     
  9. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    Çok teşekkürler.... O büyük harf küçük harf olayı için http://tr.wikipedia.org/wiki/ASCII burayı inceleyerek birşeyler yapmaya çalıştım..

    PHP:
    if((chr($y[$i])>=65) and (chr($y[$i])<=90)){
        
    $sayac .= '<img src="sayac/'.strtolower($y[$i]).'_buyuk.gif" border="0" />';
      }elseif((
    chr($y[$i])>=97) and (chr($y[$i])<=122)){
        
    $sayac .= '<img src="sayac/'.$y[$i].'.gif" border="0" />';
      }else{
        
    $sayac .= 'hatalı';
      }
    Ancak sadece küçük harfleri alabiliyorum. Büyük harfleri yine okutamıyorum. Daha doğrusu büyük harfler A.gif şeklinde çıkıyor oysa ben a_buyuk.gif şeklinde çıkartmak istiyorum
     
  10. Sniper

    Sniper Daimi Üye

    Kayıt:
    21 Haziran 2004
    Mesajlar:
    2,732
    Beğenilen Mesajlar:
    0
    Meslek:
    Webmaster
    Şehir:
    İstanbul
    O zaman ufak bir değişiklik gerek:

    PHP:
    <?php
    $kelime 
    'deneme iğüşçö DENEME İĞÜŞÇÖ';
    $kelime preg_replace('/([a-zığüşçö])/','<img src="sayac/$1.gif">',$kelime);
    $kelime preg_replace('/([A-ZİĞÜŞÇÖ])/','<img src="sayac/$1_buyuk.gif">',$kelime);
    echo(
    $kelime);
    ?> 
     
  11. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    Gerçekten çok teşekkürler.. Büyük küçük harf ayırarak yapabiliyorum.. Peki bir sorum olacak bunu for içerisinde nasıl yapabilirim? preg_replace i for döngüsü içerisinde kullanabilir miyim?


    Şu nedenle soruyorum: çünkü for içerisinde her harfe bir arkaplan veriyorum.
    PHP:
    if (($i%4)== 0){
      
    $bgrenk "renk1";
    }elseif ((
    $i%4)== 1){
      
    $bgrenk "renk2";
    }elseif ((
    $i%4)== 2){
      
    $bgrenk "renk3";
    }elseif ((
    $i%4)== 3){
      
    $bgrenk "renk4";
    }
     
  12. Sniper

    Sniper Daimi Üye

    Kayıt:
    21 Haziran 2004
    Mesajlar:
    2,732
    Beğenilen Mesajlar:
    0
    Meslek:
    Webmaster
    Şehir:
    İstanbul
    Ben seni döngülerin yavaşlığından kurtarmak için preg_replace örneği verdim, illaki döngü kullanacaksan diğer arkadaşların verdiği örnekler daha çok işine yarar...
     
  13. Pro[Ge]

    Pro[Ge] Aktif Üye

    Kayıt:
    21 Nisan 2007
    Mesajlar:
    275
    Beğenilen Mesajlar:
    0
    Döngü kullanmadan her resmin arka planına sırayla 4 renkten birini vermek mümkün değil sanırım? :garip:



    /// Düzenleme

    Herkese çok teşekkürler.. Üstteki mesajlarımda chr yerine ord kullanmam gerekiyormuş. (Php.net Manual)