Michael W.: aus 4 werde 1

hallo,
ich habe eine seite wo ein formular mit 4 feldern zu sehen ist
$1 $2 $3 und $4
ich möchte jetzt dadraus ein text bilden
"hallo ich bin $1, $2 jahre alt, komme aus $3 und $4". Das alles soll in $5 gespeichert werden damit ich es in einer textdatei speichern kann. wie ?

  1. Hi,

    huch wie schwer! ;)

    $5="... $1 $2 $3 $4";
    $fp=fopen("file.txt","w");
    fputs($fp,$5);
    fclose($fp);

    JONES

    hallo,
    ich habe eine seite wo ein formular mit 4 feldern zu sehen ist
    $1 $2 $3 und $4
    ich möchte jetzt dadraus ein text bilden
    "hallo ich bin $1, $2 jahre alt, komme aus $3 und $4". Das alles soll in $5 gespeichert werden damit ich es in einer textdatei speichern kann. wie ?

    1. Huhu

      $5="... $1 $2 $3 $4";

      mmh so richtig gültige Namen sind das ja nicht oder?

      evtl. besser Feld1 etc. zu verwenden, oder noch besser "sprechende" FormFeldNamen benutzen, also Name, Strasse etc.

      zusammenbauen könnte man es z.B. so

      $PasteMe = array( 'Name','Strasse','Wohnort'); # etc.
      $Haystack='';
      foreach($PasteMe as $key) {
       $Haystack .= strip_tags( $_POST[$key] );
      }

      if($Haystack) {
       $fp=fopen("file.txt","w");
       fputs($fp,$Haystack);
       fclose($fp);
      } else {
       echo "Nix drin";
      }

      Viele Grüße

      lulu

      1. Huhu again

        da hab ich unterschlagen, das die Werte in einen
        Text eingefügt werden sollen.

        hier also eine verbesserte Version

        $Tpl= "Hallo ich bin %s, %s Jahre alt, komme aus %s und %s";

        $PasteMe = array( 'Name','Alter','Strasse','Wohnort'); # etc.
        $Haystack=array();
        foreach($PasteMe as $key) {
         $Haystack[]= strip_tags( $_POST[$key] );
        }

        $Result=sprintf($Tpl,$Haystack[0],$Haystack[1],$Haystack[2],$Haystack[3] );

        Viele Grüße

        lulu

        1. Hmmm... immer noch nicht ganz korrekt jetzt hast du ca. 6 Zeilen in denen
          du insgesamt 3 Sachen ändern musst.

          1. Der String, der später mit sprintf formatiert wird
          2. das array ($Haystack)
          3. falls im array ein neues elem dazukommt musst du auch die sprintf funktion ändern

          1. Huhu Jones

            Hmmm... immer noch nicht ganz korrekt jetzt hast du ca. 6 Zeilen in denen
            du insgesamt 3 Sachen ändern musst.

            das ist ja nicht zwangsläufig schlimm, die Ausgangsfragestellung
            war ja mehrere Variablen in einer zusammenzufassen, da gibt es natürlich zahlreiche Möglichkeiten.
            Das war halt mal ein Beispiel mit sprintf.

            Vielleicht gefällt Dir das hier besser, da muss dann nur eine Zeile
            editiert werden.

            foreach($_POST as $k => $v) {
             $$k = strip_tags( $_POST[$v] );
            }

            $Result="Hallo ich bin $Name, $Alter Jahre alt, komme aus $Ort und $Hobby";

            Viele Grüße

            lulu

            1. Nochmals,

              ganz schlicht und einfach nö!

              <img src="/images/05.gif" width=158 height=119 border=0 alt="Jetzt reicht's aber!">

              1. Hui

                Dir auch noch einen schönen Tag

                lulu

      2. Hi,

        $5="... $1 $2 $3 $4";

        gültige Namen sind das wohl, die sind genauso gültig wie dieser Post!

        So, dass ist auch gültig...
        $point=".";
        $spacer=" ";
        $5="{$point}{$point}{$point}{$spacer}{$1}{$spacer}{$2}{$spacer}{$3}{$spacer}{$4}";

        Ach und übrigens dein
        if($Haystack) wird immer als true angesehen, da du die var definiert hast!
        Richtigt: if($Haystack!="")

        1. Hi

          $5="... $1 $2 $3 $4";
          gültige Namen sind das wohl, ...

          <quote>
          Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
          </quote>

          Ach und übrigens dein
          if($Haystack) wird immer als true angesehen, da du die var definiert hast!

          wieso mein "if" ?

          "und du cheinst dir da deiner sache sehr sicher zu sein - hast du das üperprüft?"

          http://www.php.net/manual/en/language.types.boolean.php

          Viele Grüße

          lulu

          1. Lach,

            Hobbyprogrammierer keinen Plan von der Praxis, kann man da nur sagen!

            1. Huhu Jones

              Hobbyprogrammierer keinen Plan von der Praxis, kann man da nur sagen!

              ist doch halb so schlimm, wenn Du noch ein bischen übst und fleissig
              die Dokumentation liest wird das schon noch.

              Kopf hoch ;-)

              lulu

  2. Hallo,

    "hallo ich bin $1, $2 jahre alt, komme aus $3 und $4".

    $text = "Hallo, ich bin " . $1 . ", " . $2 . " Jahre alt, komme aus " . $3 . " und " . $4 "."

    der Punkt verbindet...

    Odium

    1. und wie siehts miot zeilenumbruch aus ?

      1. und wie siehts miot zeilenumbruch aus ?

        ......."\n"...........

        Das ist hier kein ICQ oder Chat!