Martin_Online: Mehrere Werte speichern

Beitrag lesen

Hallo,

mehrere Sprachen? Das irritiert mich und schreit nach einer genaueren Erklärung.

Ganz einfach. Meine User können sich ein kleines Profil anlegen, dort gibt es ein Bereich, welche sprachen Sie sprechen, viele sprechen ja nicht nur Deutsch sondern auch Englisch, Französisch usw. Dieses möchte ich damit erreichen.

Zum Markup:

  1. Die br-Elemente sehen da ziemlich unbeholfen aus; sinnvoller wäre hier IMO eine Liste, deren li-Elemente die Checkbox und das zugehörige Label enthalten. Die sind auch "von Haus aus" Blockelemente".

Da dieses noch nicht das endgültige Layout ist, habe ich einfach ein paar <br> genommen, da sich um diese Sachen meine Freundin kümmert :) für mich zum testen und alles vorzubereiten reichen die <br>

  1. Mehrere Elemente können nicht dieselbe ID haben - erstens schon aus Prinzip nicht, zweitens hier erst recht nicht, weil dann die Zuordnung von Label und Control nicht eindeutig ist.
  1. Der Text (z.B. "Deutsch") gehört als _Inhalt_ in das label-Element, andernfalls ist das label ja ziemlich zweckfrei.

OK, ich hab es überarbeitet, dieses sieht nun so aus

  
        <form name="form1" method="post" action="">  
  
          <input name="was[]" type="checkbox" id="de">  
          <label for="de">Deutsch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="hollaendisch">  
          <label for="hollaendisch">Holländisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="tschechisch">  
          <label for="tschechisch">Tschechisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="tuerkisch">  
          <label for="tuerkisch">Türkisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="russisch">  
          <label for="russisch">Russisch</label>  
        <br>  
        <br>  
          <input type="submit" name="abschicken" id="abschicken" value="Daten eintragen">  
  
        </form>  

Da gibt's natürlich mehrere Ansätze. Mindestens.
Man könnte die values (die in deinem Code-Auszug übrigens fehlen) einfach mit einem geeigneten Trennzeichen (Blank, Komma) zu einem String verketten - und dafür selbstverständlich ISO-Sprachkürzel verwenden. Dann käme etwas wie "de,cs,ru" heraus.

OK, ich hab ein value hinzugefügt, dieses sieht nun so aus

  
        <form name="form1" method="post" action="">  
  
          <input name="was[]" type="checkbox" id="deutsch" value="Deutsch">  
          <label for="deutsch">Deutsch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="hollaendisch" value="Holländisch">  
          <label for="hollaendisch">Holländisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="tschechisch" value="Tschechisch">  
          <label for="tschechisch">Tschechisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="tuerkisch" value="Türkisch">  
          <label for="tuerkisch">Türkisch</label>  
        <br>  
          <input type="checkbox" name="was[]" id="russisch" value="Russisch">  
          <label for="russisch">Russisch</label>  
        <br>  
        <br>  
          <input type="submit" name="abschicken" id="abschicken" value="Daten eintragen">  
  
        </form>  

Die values werden später noch mit den richtigen Kürzeln geändert. Ich muss erst schauen wie dieses für die einzelnen Sprachen lauten.

Überlegung zwei, ich lege eine Tabelle an mit „sprachen“ dort befinden sich drei Spalten „id, userID, Sprache“  Alle Felder die vom User angeklickt werden, werden schmerzlos untereinander in dieser Tabelle gespeichert.

Welche der drei Beschriebenen Gedanken wie ich die Daten speichern soll, würdest du mir denn empfehlen bzw. mit welcher Option habe ich die später die wenigstens Probleme?

Das könnte auch noch eine elegante Lösung sein, hängt aber davon ab, wie und wofür du die Daten verwendest.

Wie oben bereits geschrieben der User kann sich ein eigenes Profil anlegen, dort sieht ein anderer User was für Sprachen der jeweilige User spricht. Ob ich dieses über Text oder Fahnen löse weiß ich noch nicht wirklich.

0 74

Mehrere Werte speichern

Martin_Online
  • php
  1. 0
    Der Martin
    1. 0
      Martin_Online
      1. 0
        Der Martin
        1. 0
          Martin_Online
          1. 0
            Der Martin
            1. 0
              Martin_Online
              1. 0
                Tom
                1. 0
                  Martin_Online
                  1. 0
                    rimi
                2. 0
                  molily
                  1. 1

                    Mehrere Lösungswege eines Threads zulassen

                    Tom
                    • zu diesem forum
                    1. 0
                      Martin_Online
                      1. 0
                        Tom
                        1. 0
                          Martin_Online
                          1. 0
                            Tom
                            1. 0
                              Martin_Online
                              1. 0
                                dedlfix
                                1. 0
                                  Tom
                                  1. 1
                                    dedlfix
                                    1. 0
                                      Tom
                              2. 0
                                Tom
                              3. 0
                                molily
                            2. 0
                              dedlfix
                              1. 0
                                Martin_Online
                                1. 0
                                  Tom
                                2. 0
                                  dedlfix
                              2. 0
                                Tom
                                1. 0
                                  dedlfix
                            3. 0

                              Neuer Ansatz

                              Martin_Online
                              1. 0
                                Martin_Online
                                1. 1
                                  Auge
                                  1. 0
                                    Martin_Online
                                    1. 0
                                      molily
                                      1. 0
                                        Martin_Online
                                        1. 0

                                          Nachtrag

                                          Martin_Online
                                          1. 0
                                            molily
                                          2. 1
                                            Christian Kruse
                                        2. 0
                                          molily
                          2. 0
                            molily
                            1. 0
                              Christian Kruse
                              1. 0

                                Lange nichts gehört

                                Matthias Apsel
                                • menschelei
                                1. 0
                                  Gunnar Bittersmann
                                  1. 0
                                    Christian Kruse
                                2. 0
                                  Christian Kruse
                                  1. 0
                                    molily
                                    1. 1
                                      Christian Kruse
                                      1. 1
                                        Christian Kruse
                                      2. 0
                                        molily
                                        1. 0
                                          Christian Kruse
                    2. 0

                      Das Streben nach einer angemessenen Lösung

                      molily
            2. 0
              Martin_Online
            3. 0
              Martin_Online
              1. 0
                Der Martin
                1. 0
                  Martin_Online
                  1. 0
                    dedlfix
                    1. 0
                      Martin_Online
                      1. 0
                        dedlfix
                        1. 0
                          Martin_Online
                          1. 0
                            dedlfix
                            1. 0
                              Martin_Online
                              1. 0
                                dedlfix
                                1. 0
                                  Martin_Online
                                2. 0
                                  molily
                                  1. 1
                                    dedlfix
                                    1. 0
                                      molily
                                      1. 0
                                        dedlfix
                                      2. 1
                                        Christian Kruse
  2. 0
    dedlfix
  3. 0
    molily
    1. 0
      Martin_Online
      1. 0
        molily
  4. 0
    Martin_Online
  5. 0
    hotti