• 02-09-2010, 06:19:52
    #1
    Üyeliği durduruldu
    Merhabalar,
    @edit: Çözüme ulaştığım için soruyu silip açıklama yapıyorum. Yeni başlayan arkadaşların işine yarayabilir :-)

    Bir selection box formundan gelen dizi verisini değişkene atamak için üç farklı yöntem denedik ve en kolayının implode() fonksiyonu olduğunu gördük.

    Formumuz böyle olsun:
    <select name="secilenmeyveler[]" multiple="multiple" size="5">
    <option value="3">Çilek</option>
    <option value="25">Muz</option>
    <option value="5">Karpuz</option>
    <option value="7">Kavun</option>
    </select>
    while ile
    $alanlar = $_POST["alanlar"];
    $toplam = count($alanlar);
    $sonuncu = $toplam - 1;
    $i = 0;
    while($i <= $sonuncu){
    echo "$alanlar[$i]";
    if($i != $sonuncu){
    echo ", ";
    }
    $i++;
    }

    foreach ile
    <?php
        //$veriler = $_POST['veriler'];
        $veriler = array('elma','muz','çilek','börtü','böcek');
        $toplam = count($veriler);
        $gercekVeri = '';
        $say = 1;
        foreach( $veriler as $veri ){
            $gercekVeri .= $veri;
            if($say < $toplam)
                $gercekVeri .= ',';
            $say++;
        }
        echo $gercekVeri;
        
        // çıktı : elma,muz,çilek,börtü,böcek
    ?>

    implode ile
    $alanlar = $_POST["alanlar"];
    $alanlar = implode(', ', $alanlar);
    echo $alanlar;
  • 02-09-2010, 06:23:57
    #2
    Üyeliği durduruldu
    $secilenmeyveler[] = $_POST['secilenmeyveler'];
    doğru olur sanırım. Yinede emin değilim.
  • 02-09-2010, 06:59:39
    #3
    Üyeliği durduruldu
    Deneme yanılma yöntemiyle şu şekilde çıktı alabildim.
    $alanlar = $_POST["alanlar"];
    print_r($alanlar);

    "Array ( [0] => 25 [1] => 5 )"

    bunu nasıl "25, 5" haline getirebilirim ? preg_match_all yada explode gibi fonksiyonlar dizi üzerinde çalışır mı ?
  • 02-09-2010, 07:06:30
    #4
    $alanlar = $_POST["alanlar"];
    print_r($alanlar);
    $alanlar = implode(' ', $alanlar);
    echo $alanlar;
  • 02-09-2010, 07:11:33
    #5
    Üyeliği durduruldu
    Levye adlı üyeden alıntı: mesajı görüntüle
    Deneme yanılma yöntemiyle şu şekilde çıktı alabildim.
    $alanlar = $_POST["alanlar"];
    print_r($alanlar);

    "Array ( [0] => 25 [1] => 5 )"

    bunu nasıl "25, 5" haline getirebilirim ? preg_match_all yada explode gibi fonksiyonlar dizi üzerinde çalışır mı ?
    <?php
        //$veriler = $_POST['veriler'];
        $veriler = array('elma','muz','çilek','börtü','böcek');
        $toplam = count($veriler);
        $gercekVeri = '';
        $say = 1;
        foreach( $veriler as $veri ){
            $gercekVeri .= $veri;
            if($say < $toplam)
                $gercekVeri .= ',';
            $say++;
        }
        echo $gercekVeri;
        
        // çıktı : elma,muz,çilek,börtü,böcek
    ?>
  • 02-09-2010, 07:24:01
    #6
    Üyeliği durduruldu
    Banada birden ilham geldi Şöyle bir şey yazdım fakat bu şekilde veritabanına yollamak zor olacak.
    Sanırım en kısa ve kolayı Kelkun'un verdiği implode() fonksiyonu
    Teşekkür ederim.