PHP lomake, checkboxit???

Panu82

Mähän oon siis ihan aloittelija tässä PHP:ssä. Ja mulla ois nyt sellanen ongelma, etten keksi mikä tossa php-koodissa mättää. Olen siis tehnyt lomakkeen, jossa on tarkoitus pystyä valitsemaan vaihtoehdoista useita ja lähettämisen jälkeen olis tarkoitus saada sähköpostiin tulemaan tiedot KAIKISTA valituista boxeista. Nyt en vain ymmärrä, missä vika...kun sähköpostiin tulee joko array:tä, erroria tms. Osaisko joku viisaampi korjata tuota mun alla olevaa koodia!!!???

Elikäs lomakkeessa php osuus on näin...




...jne


...jne


...jne


...jne


Ja käsittelijässä sitten näin:




Tuota array:tä en oikein ymmärrä ja uskon että siinä ainakin mättää?! Sitä ei vissiin pitäis käyttää, mutta mitä sitten tilalle???? Auttakaa ny miestä mäessä!

7

546

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Panu82

      siis tosta eka viestistä nyt katos se alun php eli se oli näin:




      ...jne

      ...jne

      ...jne

      ...jne

      • Panu82

        No ei se sitten näy...olkooon... ongelmahan onkin tuossa toisessa koodissa, et samapa tuo periaatteessa tuolle toiselle!

        Oisko ideoita miten muuttaa että tuo toimiski sitten?


    • Jaska Perusjaska

      Vika johtunee siitä, että $_POST['kevat'] jne. eivät ole taulukoita vaan merkkijonoja. Tai riippuu mitä html-koodissa on. Eli laitapa se kuitenkin näkyviin. Tagit saa näkymään uudessa s24:ssä ainakin kun laittaa välilyönnit < ja > merkkien molemmin puolin. Esim. < p > Minä olen kappale < /p >

      Ja laita myös se errori tänne, jos sellaista tarjoaa. Siinä kun useinmiten lukee missä vika on.

      Tuota foreachia en ymmärrä alkuunkaan, mitä sillä ajat takaa. Alussa sijoitat jo $posti-taulukkoon kevät, kesä, syksy ja talvi -muuttujien arvot.

      Eli $posti[0] sisältää ilman foreachiakin lomakkeen "kevat" -kohdan arvon.
      $posti[1] kesan jne.

      • Panu82

        Kokeillaanpa sitten noilla välilyönneillä laittaa...
        < html >
        < head >
        < /head >
        < body >
        < form action="aanestys1.php" method="post" >

        < input type="checkbox" name="kevat[]" value="kevat1" >
        < input type="checkbox" name="kevat[]" value="kevat2" >
        < input type="checkbox" name="kevat[]" value="kevat3" > jne. valueita on siis useampia per vuodenaika
        < input type="checkbox" name="kesa[]" value="kesa1" >
        < input type="checkbox" name="kesa[]" value="kesa2" >
        < input type="checkbox" name="kesa[]" value="kesa3" >jne.
        < input type="checkbox" name="syksy[]" value="syksy1" >
        < input type="checkbox" name="syksy[]" value="syksy2" >
        < input type="checkbox" name="syksy[]" value="syksy3" > jne.
        < input type="checkbox" name="talvi[]" value="talvi1" >
        < input type="checkbox" name="talvi[]" value="talvi2" >
        < input type="checkbox" name="talvi[]" value="talvi3" > jne.

        < input type="submit" value="Lähetä">
        < /table >
        < /form >
        < /body >
        < /html >

        Ja tällanen on se errori:
        Parse error: syntax error, unexpected ',' in /home/kiinanha/public_html/Kalenteriaanestys2010/kuvaaanestys1.php on line 19

        Kun nuita valueita on siis useampia per vuodenaika, niin millainen tuon käsittely.php pitäisi olla, että saan kaikki valitut checkboxit tulemaan sähköpostiin? Aluksi mulla oli sellanen koodi, että se lähetti vain sen viimeiseksi valitun aina kyseisen namen kohdalta, ei mitään muita. Eli miten saan näytille KAIKKI valuet jokaiselle name:lle??


      • keksa1
        Panu82 kirjoitti:

        Kokeillaanpa sitten noilla välilyönneillä laittaa...
        < html >
        < head >
        < /head >
        < body >
        < form action="aanestys1.php" method="post" >

        < input type="checkbox" name="kevat[]" value="kevat1" >
        < input type="checkbox" name="kevat[]" value="kevat2" >
        < input type="checkbox" name="kevat[]" value="kevat3" > jne. valueita on siis useampia per vuodenaika
        < input type="checkbox" name="kesa[]" value="kesa1" >
        < input type="checkbox" name="kesa[]" value="kesa2" >
        < input type="checkbox" name="kesa[]" value="kesa3" >jne.
        < input type="checkbox" name="syksy[]" value="syksy1" >
        < input type="checkbox" name="syksy[]" value="syksy2" >
        < input type="checkbox" name="syksy[]" value="syksy3" > jne.
        < input type="checkbox" name="talvi[]" value="talvi1" >
        < input type="checkbox" name="talvi[]" value="talvi2" >
        < input type="checkbox" name="talvi[]" value="talvi3" > jne.

        < input type="submit" value="Lähetä">
        < /table >
        < /form >
        < /body >
        < /html >

        Ja tällanen on se errori:
        Parse error: syntax error, unexpected ',' in /home/kiinanha/public_html/Kalenteriaanestys2010/kuvaaanestys1.php on line 19

        Kun nuita valueita on siis useampia per vuodenaika, niin millainen tuon käsittely.php pitäisi olla, että saan kaikki valitut checkboxit tulemaan sähköpostiin? Aluksi mulla oli sellanen koodi, että se lähetti vain sen viimeiseksi valitun aina kyseisen namen kohdalta, ei mitään muita. Eli miten saan näytille KAIKKI valuet jokaiselle name:lle??

        Tuolla tavalla kun tekee html-koodin, niin sieltä tulee sitten tuon nimisiä taulukoita.



        Kannattaa vaikka paperilla ensin jäsennellä tuota hommaa, kun tuo versiosi näyttää niin sekavalta. Luodaan array posti jota ei käytetä, tämän jälkeen haetaan arrayt edelleenkin POSTista, sen jälkeen puretaan ne foreachilla ja kirjoitetaan itsensä päälle (yksittäinen arvo taulukon päälle) eli Suomeksi ei minkään näköstä järkeä. Touhutaan vaan hirveesti ja toivotaan, että tarpeeksi kun ampuu sokkona, niin osuu oikeaan...


      • Panu82
        keksa1 kirjoitti:

        Tuolla tavalla kun tekee html-koodin, niin sieltä tulee sitten tuon nimisiä taulukoita.



        Kannattaa vaikka paperilla ensin jäsennellä tuota hommaa, kun tuo versiosi näyttää niin sekavalta. Luodaan array posti jota ei käytetä, tämän jälkeen haetaan arrayt edelleenkin POSTista, sen jälkeen puretaan ne foreachilla ja kirjoitetaan itsensä päälle (yksittäinen arvo taulukon päälle) eli Suomeksi ei minkään näköstä järkeä. Touhutaan vaan hirveesti ja toivotaan, että tarpeeksi kun ampuu sokkona, niin osuu oikeaan...

        Mähän tuossa kerroinkin jo, et meinaa olla mulle vähän hepreaa tää koko php, mutku nopeessa aikataulussa pitäis saada jonkinmoinen lomake tehtyä, pääkoppa on ihan sekasin, niin ihmekös tuo jos tulee tehtyä tuomosia räpellyksiä. Alunperin mulla oli siis vain tuo array tuossa ja jälkeenpäin mietinkin sit et pitäiskö se sittenkin olla se foreach.... mut joo, räpellys se on, sen myönnän. Mut siksi aattelin kääntyä jonkun viisaamman puoleen, ku oma touhu alko olemaan aika epätoivosta!

        Kiitos siis näistä neuvoista!


      • PerusMaukka
        keksa1 kirjoitti:

        Tuolla tavalla kun tekee html-koodin, niin sieltä tulee sitten tuon nimisiä taulukoita.



        Kannattaa vaikka paperilla ensin jäsennellä tuota hommaa, kun tuo versiosi näyttää niin sekavalta. Luodaan array posti jota ei käytetä, tämän jälkeen haetaan arrayt edelleenkin POSTista, sen jälkeen puretaan ne foreachilla ja kirjoitetaan itsensä päälle (yksittäinen arvo taulukon päälle) eli Suomeksi ei minkään näköstä järkeä. Touhutaan vaan hirveesti ja toivotaan, että tarpeeksi kun ampuu sokkona, niin osuu oikeaan...

        Siis häh? Saiko joku tosta selityksestä jotain tolkkua? Koitetaanko tässä nyt sanoa, että noi koodit kumoaa toinen toisensa vai mitä? Mikä se olis sitten niinkö se oikea tapa tehdä toi? Kiinnostaa tietää jos meikä joutuis tollasen väsäämään.


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

    Luetuimmat keskustelut

    1. Tukalaa kuumuutta

      Tietäisitpä vaan kuinka kuumana olen käynyt viime päivät. Eikä johdu helteestä, vaan sinusta. Mitäköhän taikoja olet teh
      Ikävä
      42
      2702
    2. Mansikkatiloilla hyväksikäytetään ukrainalaisia

      Työolot ovat surkeita ja palkka kelvoton. https://yle.fi/a/74-20172942
      Maailman menoa
      339
      2418
    3. Sinä, ihastukseni

      Mitä haluaisit tehdä kanssani ensimmäisenä?
      Ihastuminen
      35
      2114
    4. Ensi kesänä

      Näin kesän viimeisenä minuutteina ajattelen sinua. Olisiko seuraava kesä "meidän" kesä? Tänä vuonna ei onnistuttu, mutta
      Ikävä
      47
      1806
    5. Tiedät ettei tule toimimaan.

      Mielenterveys ei kummallakaan kestä.
      Ikävä
      24
      1675
    6. Okei, myönnetään,

      Oisit sä saanut ottaa ne housutkin pois, mutta ehkä joskus jossain toisaalla. 😘
      Ikävä
      25
      1569
    7. Onko kaivatullasi

      himmeä kuuppa?
      Ikävä
      44
      1440
    8. Sokea "ystävälle"

      Oletko oikeasti noin sokea?
      Ikävä
      100
      1409
    9. En ymmärrä käytöstäsi

      Se on ollut eräänlaista hyväksikäyttöä. Että seura kyllä kelpaa palstan välityksellä silloin kun ei ole parempaakaan tek
      Ikävä
      139
      1355
    10. On jo heinäkuun viimeinen päivä.

      En taida nähdä sinua koskaan.
      Rakkaus ja rakastaminen
      36
      1156
    Aihe