• 29-09-2009, 19:09:09
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba bir mail sistemi üstünde çalışıyorum uzun zamandır, pek çok yeri tamamladım ancak ufacık bir yerde takıldım ne yazık ki, mynet ve hotmailde herhangi birine mail gönderdikten sonra "mailininiz şu adreslere gönderilmiştir" yazıyor.

    Bunu yaptım mail gönderildikten sonra tüm alıcıların maillerini listeletebiliyorum ancak burada mailler şu şekilde:

    nefrit@deneme.com; emre@site.com; zaman@za.com
    yani her bir mailin arasında
    ;
    işareti var, bu defada tüm mailleri alt alta dizmek için;

    function format_urla($to)
    {
    	$bul = array(',', ';');
    	$yap = array('<br>', '<br>');
    	$perma = strtolower(str_replace($bul, $yap, $to));
    	return $perma;
    }
    Böylece
    nefrit@deneme.com; emre@site.com; zaman@za.com
    şeklindeki maillerin arasında ; da olsa yada , de olsa her iki durumda da tüm mailleri alt alta dizdim ama şimdi gelelim sorunuma;

    alt alta dizdiğim maillerin yanına adres defterine ekleyebilmek için
    <input
    lar eklemem gerekiyor ancak her mailin başına bunu eklemeyi bir türlü başaramadım, aklıma şu an bir çözüm gelmediği için sizlere soruyorum nasıl her mailin başına input eklerim ?

    Bu arada
    	$yap = array('<br>', '<br>');
    kısmına input ekleyebiliyorum ancak bir sorunda beraberinde heliyor;

    nefrit@deneme.com; emre@site.com; zaman@za.com
    adresler bu şekilde diziliyor ve son mail adresinin sonunda ; veya , olmadığı için son adresin başına INPUT ekleyemiyorum,

    yardımlarınızı bekliyorum.
  • 29-09-2009, 19:22:01
    #2
    hocam..
    exlode kullanmanı tavsie ederim.
    yani şu şekilde..
    Alıntı
    $mail=explode(";",$_POST[mail]);
    while($count($mail)>$a){
    $a++;
    echo"<br>$mail[$a]</br>";
    echo"<input";
    }
  • 29-09-2009, 19:35:12
    #3
    cagri999 adlı üyeden alıntı: mesajı görüntüle
    hocam..
    exlode kullanmanı tavsie ederim.
    yani şu şekilde..

    Şimid burada ;
    [PHP]$mail=explode(";",$_POST[mail]); <-- buraya mailleri yazmamı istiyorsun sanırım

    yani veri çekilmiş örneği;
    $mail=explode(";", emre@a.com; zaza@tu.com); <-- gibi değil mi yanlış anlamadı isem

    Böylelikle $mail değişkenine mailleri vermiş olduk ,,

    Burada sayıyor galba maillerin kaç trane oduğunu sonrada
    while($count($mail)>$a){
    $a++;
    echo"<br>$mail[$a]</br>"; <-- bu kısımda mailleri sıralıyor sanırım ve yanlış anlamadı isem buraya INPUT larımıda ekleyebilirim ?

    Yani üstteki kod şöyle olsa;

    echo"<br> <input kodum> $mail[$a]</br>";
    Olacak diyorsun değil mi ?

    seni tuttum , bunu deniyeceğim sonucu haber verir,m gene aynı konuda, tşkler.
  • 29-09-2009, 21:46:04
    #4
    evet hocam dğru anlamışşsınız.
  • 29-09-2009, 23:24:57
    #5
    Biraz explode nin işleyişini araştırdım belki bu işlem (explode) işime yarayabilir ve şöyle bir kod denedim test amaçlı:

    <?php
    $deg = "24;45;65;fdd;456:yayaya";
    $bol = explode(";", $deg);
    
    ECHO $bol; 
    ?>
    Ancak ne ilginc ki sayfada sadece Array çıkıyor :S
  • 29-09-2009, 23:58:55
    #6
    hee ama şöle bişey yaptım ;

    <?php
    $metin = "24;45;65;fdd;456:yayaya";
    $data = explode(";", $metin);
    
    // İşlemleri göster
    foreach ($data as $kaka) 
    {
    echo "$kaka<br>";
    }
    // Tamam
    
    ?>
    kısacası explode ile verileri ayrıştırdım foreach ile her veri için ayrı ayrı işlem yaptırdım ve herşey ekrana geldi olması gerektiği gibi şimdi bu fonksiyonları kulanarak verilerin önüne INPUT larımı eklemeyi deniyeceğim.
  • 30-09-2009, 00:15:38
    #7
    preg_split kullan, birkaç karakter ile bölebilirsin..

    $metin = "24;45;65;fdd;456:yayaya";
    $data = preg_split('/,|;|:/', $metin);
    // İşlemleri göster
    foreach ($data as $kaka) 
    {
    echo '<input type="checkbox">'.$kaka.'<br>';
    }
    // Tamam
  • 30-09-2009, 00:43:27
    #8
    Teşekkürler Enigmatic, sanırım yaş ilerledikçe php de mantık yürütmede ilerliyor