adrinator: texarea in variablen aufteilen?

Hallo!

Ich habe ein Problem mit einer textarea:
Wie kann ich sie in verschiedene Variablen aufteilen, also so:
Eingabe in textarea:
Alter 25 Jahr 08
Und daraus soll werden:
$alter = 25;
$jahr = 08;
wie geht das?
Also die variablen heißen immer gleich und haben entweder 1 oder 2 Zeichen.

Kann mir jemand helfen?

mfg
adrian

  1. Hi adrinator!

    Alter 25 Jahr 08
    Und daraus soll werden:
    $alter = 25;
    $jahr = 08;

    Warum machst du daraus nicht mehrere Textinputs?

    wie geht das?

    Du müsstest halt den Text parsen und aus entsprechenden Textstrukturen Datenstrukturen bilden.
    Mache dir dazu zunächst klar, woran _du_ erkennst, wie die Variablen zuzuordnen sind. Danach kannst du das in PHP Schritt für Schritt nachbauen.
    Allerdings kannst du den Benutzer mit solch einem Formular extrem nerven, da zu erwarten ist, dass viele Fehlermeldungen ausgegeben werden. (Bedingt durch Tippfehler, falsche Reihenfolge, etc.)

    Sinnvoller als Variablen wäre ein assoziatives Array mit den Begriffen als Schlüssel.

    MfG H☼psel

    --
    "It's amazing I won. I was running against peace, prosperity, and incumbency."
    George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
    Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
    1. Danke für die schnelle Antwort.

      Warum machst du daraus nicht mehrere Textinputs?

      Weil das in dem Sinne gar kein Formular wird, sondern einen Text, den man dort reinkopiert (ist etwas komplizierter, deshalb spare ich mir mal weitere Erläuterungen :P)

      Sinnvoller als Variablen wäre ein assoziatives Array mit den Begriffen als Schlüssel.

      So in etwa habe ich mir das auch schonmal gedacht (bzw. schonmal gehört). Kenn t jemand dazu einen bestimmten Tag, den man dafür braucht? Um mir dann den Code zusammenzubasteln? Weil zZ weiß ich nicht wonach ich suchen soll...

      danke für die schnelle antwort
      mfg adrian

      1. Hi adrinator!

        Warum machst du daraus nicht mehrere Textinputs?
        Weil das in dem Sinne gar kein Formular wird, sondern einen Text, den man dort reinkopiert (ist etwas komplizierter, deshalb spare ich mir mal weitere Erläuterungen :P)

        Aber wenigstens erwähnen musst du das schon in der Problembeschreibung.

        Kennt jemand dazu einen bestimmten Tag, den man dafür braucht?

        Was für ein Tag? Montag passt dir wohl nicht?! =)

        Um mir dann den Code zusammenzubasteln?

        Du bekommst den gesamten Inhalt des Textarea vorgesetzt. Den musst du nun abarbeiten.

        Weil zZ weiß ich nicht wonach ich suchen soll...

        Im Manual findest du [http://www.php.net/manual/de/refs.basic.text.php@title=jede Menge zur Textverarbeitung]. Wie gesagt, du musst dir bewusst werden, wonach du suchst und wie du das Gesuchte in eine Datenstruktur eingliederst.

        Bsp.:

        // $_POST['TEXTAREA_NAME'] enthält "Alter 25 Jahr 08"  
        $person = array();  
        $array = explode(' ',$_POST['TEXTAREA_NAME']);  
        for($i=0;$i<count($array);$i=$i+2)  
          $person[$array[$i]] = $array[$i+1];
        

        Das wäre schon einmal ein Anfang. Mehr aber nicht!
        Die Fehlerbehandlung wird extrem schwierig bis unmöglich.
        Was passiert, wenn jemand nur Unsinn eingibt oder einen Schreibfehler macht? Dein Konzept ist fehlerhaft. Du würdest anhand von Usereingaben Arrayeinträge erzeugen, die völlig willkürlich falsch oder richtig wären.

        Ich nehme an, es geht dir um eine Eingabeerleichterung.
        Es wäre viel sinnvoller clientseitig zu arbeiten.

        Dafür definierst du wie üblich deine Inputfelder, bietest aber zusätzlich eine Textarea an, in die der Text kopiert werden kann. Diesen Text parst du mit Javascript und füllst die Inputfelder aus. Vorteil ist, dass in PHP nur bekannte Arrayeinträge entstehen.

        MfG H☼psel

        --
        "It's amazing I won. I was running against peace, prosperity, and incumbency."
        George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
        Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
        1. Hi adrinator!

          Der Link lautet natürlich http://www.php.net/manual/de/refs.basic.text.php.

          MfG H☼psel

          --
          "It's amazing I won. I was running against peace, prosperity, and incumbency."
          George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
          Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
          1. thx, aber:

            User Contributed Notes
            Textverarbeitung
            There are no user contributed notes for this page.

            der Link scheint irgendwie falsch zu sein?!

            mfg
            adrian

            1. hi,

              der Link scheint irgendwie falsch zu sein?!

              Das ist die Übersichtsseite zum Thema „Textverarbeitung“, da musst du dich durch[klicken/lesen].

              mfg

            2. irgendwie finde ich nichts gescheites.

              kann mir keiner helfen? Ich habe bis jetzt nur Codes gefunden, aus denen ich Zeilen einzelnen Variablen zuordnen kann, aber wie geht das mit Text (der ist imemr gleich)?

              mfg
              adrian

              1. Hi adrinator!

                kann mir keiner helfen? Ich habe bis jetzt nur Codes gefunden, aus denen ich Zeilen einzelnen Variablen zuordnen kann, aber wie geht das mit Text (der ist imemr gleich)?

                Ich fühle mich inzwischen leicht verarscht. Ich habe dir sogar einen Beispielcode mit explode() gegeben.
                Andere Stringfunktionen, die du nutzen könntest, findest du auf der von mir verlinkten Seite und deren Unterseiten.

                Für deine Aufgabe wären reguläre Ausdrücke in Verbindung mit preg_match sinnvoll. So kannst du nach "Begriff + Leerzeichen + Wert" suchen.

                MfG H☼psel

                --
                "It's amazing I won. I was running against peace, prosperity, and incumbency."
                George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
                Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
                1. <?php
                  // den Hostnamen aus URL holen
                  preg_match('@^(?:http://)?([^/]+)@i',
                      "http://www.php.net/index.html", $treffer);
                  $host = $treffer[1];

                  // die letzten beiden Segmente aus Hostnamen holen
                  preg_match('/[^.]+.[^.]+$/', $host, $treffer);
                  echo "Der Domänen-Name lautet: {$treffer[0]}\n";
                  ?>

                  Ich denke das könnte ein richtiger Code sein. In diesem Code wird zwar nach der URL gesucht, aber vielleicht geht das ja trotzdem. Wie bekomme ich jetzt aus dem Code zum Beispiel, dass er nach "Name" sucht? Und dass er in einer textarea sucht?
                  Geht das mit diesem Code, wenn ja wie :P

                  mfg
                  adrian

                  1. Mahlzeit adrinator,

                    Ich denke das könnte ein richtiger Code sein. In diesem Code wird zwar nach der URL gesucht, aber vielleicht geht das ja trotzdem. Wie bekomme ich jetzt aus dem Code zum Beispiel, dass er nach "Name" sucht?

                    Indem Du

                    a) Dir die Grundlagen von PHP aneignest, anschließend herumprobierst, bei konkreten Fragen diese hier stellst und Dich freust, wenn Du es selbst geschafft hast oder

                    b) jemanden beauftragst, diese Funktionalität zu den üblichen Stundensätzen für Dich zu programmieren (meine Email-Adresse findest Du z.B. oben).

                    Du befindest Dich hier im "SELF"HTML-Forum, nicht im "Ich-will-was-ganz-Triviales-aber-habe-keinen-Bock,-mir-wenigstens-die-Grundlagen-anzueignen,-deswegen-schiebt-mal-Code-rüber,-aber-zack-zack"HTML-Forum.

                    MfG,
                    EKKi

                    --
                    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|