select multiple

nooboon

On array jonka näytän select multiplena jotta siitä voisi valita haluamansa:

[0] => aaa
[1] => bbb
[2] => ccc

No kun valinnat on tehty niin ne tallenetaan:

foreach ( $_POST['menu'] as $k ){
  $menu .= $k.",";
}

Eli jos on kaikki valittu niin loppu muoto on "aaa,bbb,ccc,". No nyt jos sitten tallennankin vain 2 kohdan on loppu muoto "ccc,".

Kysynkin siis oisko mahdollista jotenkin saada kaikki pilkut näkyviin oikeaan järjestykseen vaikka vain yksi kohta olisi valittu? Eli siis näin ",,ccc," tai "aaa,,,"? Itselläni ei enään leikkaa.

6

589

    Vastaukset 6

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • mutta toimivasti?

      $array = array('aaa', 'bbb', 'ccc');
      $menu = "";

      for($i = 0; $i < current($_POST['menu']); $i )
      $menu .= ",";

      foreach($_POST['menu'] as $m)
      if(isset($array[$m]))
      $menu .= $array[$m].",";

      for($i = end($_POST['menu']); $i < sizeof($array) - 1; $i )
      $menu .= ",";

      • IT-Rex

      • IT-Rex
        IT-Rex kirjoitti:

        hm-m, kokonaiset 3(!!!) silmukkaa simppelin tehtävän suorittamiseen :)

        http://fi2.php.net/manual/en/function.implode.php
        http://fi2.php.net/manual/en/function.in-array.php

        jos edellinen vastaukseni oli jäänyt epäselväksi:


      • ...............
        IT-Rex kirjoitti:

        jos edellinen vastaukseni oli jäänyt epäselväksi:

        > $input = array('ccc','aaa');

        Vai $input = array(2,0);


      • nooboon
        IT-Rex kirjoitti:

        jos edellinen vastaukseni oli jäänyt epäselväksi:

        Kiitos vaan molemmille mutta sain sen jo toimimaan

        global $final_menu,$menu;

        $array = array('aaa', 'bbb', 'ccc');

        foreach ( $_POST['menu'] as $m )
          $menu[$m] = $m;

        foreach ( $array as $n )
          if ( isset ( $menu[$n] ) && $menu[$n] == $n ) $final_menu .= $n.",";
          else $final_menu .= ",";

        echo $final_menu;

        Sitä en tiedä voisko ton tehdä järkevämminkin mutta ainakin ajaa asiansa.


      • IT-Rex
        ............... kirjoitti:

        > $input = array('ccc','aaa');

        Vai $input = array(2,0);

        >>> Vai $input = array(2,0);

        Sori, mutta mitä tarkoitit ?!


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. kenen näköinen

      kaivattusi on ?
      Ikävä
      71
      1144
    2. Muistatko Mikkelin panttivankidraaman?

      Uusi draamasarja järkyttävästä tapauksesta on tulossa. Tositapahtumiin perustuva sarja ammentaa vuoden 1986 Mikkelin pan
      Maailman menoa
      77
      894
    3. Iäkäs Jämsäläinen mies kuoli poliisiautoon matkalla Jyväskylän putkaan

      Iäkäs vanhus humalassa niin huonossa kunnossa, ettei pystynyt huolehtimaan itsestään niin ainoa apu sillä hetkellä oli
      Jämsä
      76
      865
    4. Poliisi yritti murhata mopopojan

      Nyt menee kissalan poikien touhu liian pitkälle! https://www.is.fi/kotimaa/art-2000012193221.html Karu video mopomiiti
      Maailman menoa
      386
      801
    5. En välitä sinusta yhtään

      Olet pelkkä itsestään liikoja luuleva ämmä. Kierrän sinut kaukaa nyt ja aina. Olit mulle pelkkä lelu vaan.
      Ikävä
      52
      773
    6. Mitä haluaisit kysyä tänään

      Kaivatultasi? Anna jokin tunniste itsestäni tai hänestä.
      Ikävä
      62
      770
    7. Ei se nainen edes oo

      mitenkään nätti 🤣🤣🤣🤣🤣
      Ikävä
      67
      737
    8. Ernest Lawson täräytti erikoisen heiton TTK-lehdistötilaisuudessa: " Onko tässä tarkoituksena...?"

      Ernest Lawson esitteli uudet TTK-tähtioppilaat ja opettajat torstaina 6.8. lehdistölle. Tulevalla kaudella on yksi hausk
      Kotimaiset julkkisjuorut
      10
      708
    9. Olen luovuttanut

      Välimme menivät niin pahasti solmuun, ettei niitä voi enää korjata. On aika jatkaa elämässä eteenpäin. Toivon sulle kaik
      Ikävä
      35
      662
    10. Mersumies201

      Oli tänään hyrskällä melekoosen tehokas 124 liikenteessä. Ei paljon vastamäki haitannu....
      Hyrynsalmi
      16
      550
    Aihe