Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP Code im ECHO(Verschachtelung)

Einklappen

Neue Werbung 2019

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

  • PHP Code im ECHO(Verschachtelung)

    Hallo

    Meine seite hat verschiedene inhalte, die über ein menü alla <a href="?op=xxx" ... > aufgerufen werden sollen.

    Soll dann in etwa so aussehen:
    PHP-Code:
    <?php
    $op 
    $_GET["op"];
    ?>
    HTML
    <?php
    if ( $op==xxx1 ) echo '
     
    HTML Code
     
    '
    ?>
    funktioniert auch bisher

    nun habe ich aber inhalt der viele checkboxen enthält, die noch etwas derartiges enthalten:

    <input type="checkbox" name="a1" value="a1" <?php if ($a1==1) echo "checked=true" ?>>

    heisst die checkboxen werden sich im endeffekt aus ner datenbank rausziehen ob sie schon aktiviert sind oder nicht.
    PHP-Code:
    <?php
    $op 
    $_GET["op"];
    ?>
    HTML
    <?php
    if ( $op==xxx1 ) echo '
     
    HTML Code
     
    <input type="checkbox" name="a1" value="a1" <?php if ($a1==1) echo "checked=true" ?>>
     
    '
    ?>
    das funktioniert nun aber nicht mehr. denke es liegt am verschachtelten <?php ?>. wenn ich das aber nicht schreibe wird die if abfrage ja aber nicht interpretiert. was kann ich tuen? ich könnte mit vielen echos aufbröseln, allerdings würde das meinen quelltext quasi unlesbar machen, was sehr schade wäre

    wäre um hilfe echt dankbar

    mfg hifish


  • #2
    Ich würde dir empfehlen ne Template-Engine zu nutzen.
    Bei deiner Verfahrensweise hast du mit grösseren Vorhaben schnell keinen Durchblick mehr.
    Eine kleine Template-Engine findest du im BrickOO-Framework.
    Dann gäbe es da auch noch ein etwas komplexeres System namen Smarty

    MfG

    Hroudtwolf
    Computer-Training kostenlos, gemeinnützig bis günstig.

    Kommentar


    • #3
      Ich persönlich kann dieses Gemisch aus PHP und HTML nicht ausstehen. Aber das ist Ansichtsache. Schau dir das mal ans:
      PHP-Code:
      <?php
      $op 
      $_GET["op"];

      if (
      $op ==  'xxx1') {
          
      $checked = ($a1 == 1) ? "checked='checked'" "";
          echo 
      "<input type='checkbox' name='a1' value='a1'$checked />";
      ?>
      und überlege, ob das vielleicht hilft.
      Gruss
      L

      Kommentar

      Lädt...
      X