variable in variable

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • variable in variable

    kleines problem .... vielleicht weiss hier jemand bescheid. danke.

    also ... ich bau mir ein kleines formular so zusammen, dass ich den html-code über variablen übergebe

    ganz einfach ....
    PHP-Code:
    $name "Name";

    $tf "<input type=\"text\"  class=\"$cssClass\" name=\"frm$name\"   class=\"tf1\"> $name";

    echo 
    $tf
    die html ausgabe sieht dann auch so aus:
    PHP-Code:
    <input type="text"  class="tf1" name="frmName"  class="tf1"Name 
    alles klar bis hierhin .... nun das problem - wenn das formular im betrieb ist, solle via value je nachdem ein wert reingeladen werden können ...

    wird das ganze direkt geschrieben sieht der code ja dann so aus, und dann
    gibts auch kein problem

    PHP-Code:
    echo  "<input type=\"text\"  class=\"$cssClass\" name=\"frmName\" value=\"$pgName\"  class=\"tf1\"> $name"
    wenn ich das jetzt über die variable eingeben möchte hätte ich das so gemacht

    PHP-Code:
    $name "Name";

    $tf "<input type=\"text\"  class=\"$cssClass\" name=\"frm$name\"  value=\"".${"pg".$name}."\" class=\"tf1\"> $name 
    aber ... das geht nicht ... zwar wird die Variable $pgName gebildet, aber sie bezieht sich auf den inhalt der variable $tf - stattdessen sollte ich sie als variable in die ausgabe reinbringen.

    wenn das zu kompliziert erklärt ist, erläutere ich es gerne noch weiter.
    Zuletzt geändert von bobby; 27.08.2006, 21:00.
    http://www.radiocity.ch

  • #2
    Jo, erklär noch mal langsam.

    hast du s error-reporting an?

    was ist dein ziel?

    Kommentar


    • #3
      ok - hab jetzt einen workaround gefunden, bin aber nicht wirklich zufrieden deshalb versuch ichs jetzt nochmals mit der beschreibung

      ziel wäre es via eine funktion, html-code zu schreiben - da ich bei formularen nicht immer wieder den selben code reintippen muss, sondern via funktion und parametern das jeweils nötige formularfeld ausgeben kann, inkl. aller namen, variablen, etc.

      das funktioniert auch ohne weiteres so wie im nachstehenden code.


      PHP-Code:
      function buildTextField($name,$cssClass)
      {
      $tf "<input type=\"text\"  class=\"$cssClass\" name=\"frm$name\" >  $name ";

      return 
      $tf;
      }


      ///der aufruf
      buildTextField("Name","tf1"); 
      das problem entsteht nun deshalb, weil innerhalb des fomularfelds jeweils über den html-wert "value", den wert wieder reinschreibe wenn das formular nicht korrekt abgesandt wurde (heisst, wenn z.b. die e-mail adresse falsch war)

      das sieht dann so aus und funktioniert ebenfalls:
      PHP-Code:
      <input type="text"  class="tf1" name="frmName" value="<?=$pgName?>" >Name
      oder halt
      PHP-Code:
      echo  "<input type=\"text\"  class=\"$cssClass\" name=\"frmName\" value=\"$pgName\" > $name"
      aber wie bringe ich eben diese variable [COLOR=blue]$pgName[/COLOR] von der funktion in die ausgabe rein?

      PHP-Code:
      function buildTextField($name,$cssClass)
      {
      $tf "<input type=\"text\"  class=\"$cssClass\" name=\"frm$name\"  value=\"${"pg".$name}\"> $name";

      return 
      $tf;
      }

      ///der aufruf
      buildTextField("Name","tf1"); 
      dass dies nicht funktioniert ist ja eigentlich auch klar, denn [COLOR=red]${"pg".$name}[/COLOR] bezieht sich ja auf den inhalt von [COLOR=red]$tf[/COLOR] innerhalb der funktion - damit es klappt müsste es als variable in die php/html ausgabe reinkommen, d.h. die variable müsste eigentlich als string übergeben werden und erst in der ausgabe zur variable werden. so aber bleibt "value" leer, während es auf der herkömmlichen art und weise reinkommt.
      http://www.radiocity.ch

      Kommentar


      • #4
        Warum willst du denn den Namen der Variablen übergeben - warum nicht einfach ihren Wert ...?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Hi,

          ich hab es immer noch nicht verstanden. Kannst du es
          nochmal so erklären dass aussenstehende es auch verstehen
          können ?
          (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

          Kommentar


          • #6
            Original geschrieben von wahsaga
            Warum willst du denn den Namen der Variablen übergeben - warum nicht einfach ihren Wert ...?

            weil der wert, ja erst viel später ensteht - beim versenden eines formulars (bzw. eben bei einem fehler) mit dem durch die funktion generierten textfeld. die variable bezieht sich dann auf den inhalt des textfeldes - ich möchte sie einfach in der funktion vordefinieren, so wie ich den rest, ohne probleme definiere.
            http://www.radiocity.ch

            Kommentar

            Lädt...
            X