Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Eigenschaften ausgeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Eigenschaften ausgeben

    (Hab das in das Falsche Unterforum gestellt, sollte eigentlich ins "PHP Einsteiger", bitte verschieben.)

    Ich habe eine Klasse User, wo ich aus einer Datenbank mit einer While-Schleife und mysql_fetch_assoc alle Informationen über die User hole (z.B. ID, Name, usw). Das Ergebnis möchte ich in der Datei liste.php strukturiert in mehreren DIV-Boxen anzeigen.

    Im Moment habe ich das so:
    PHP-Code:
    // Auszug aus der Klasse User

     
    $sql "SELECT * FROM user";
     
    $res mysql_query($sql);
     while (
    $row mysql_fetch_assoc($res)) {
     
    $id htmlspecialchars($row['id']);
     
    $name htmlspecialchars($row['name']);
    // ...

     
    echo '
      <div>
      <div>' 
    $id '</div>
      <div>' 
    $name '</div>
    // ...
    </div>'

    Ich möchte die Ausgabe aber gerne nicht bereits in der Klasse "vorformatieren" (in DIV-Boxen verpacken), sondern erst in der Datei liste.php.

    Würde das auch so gehen:

    PHP-Code:
    // Erweiterung der Klasse User

     
    $id "";       // neue Eigenschaft einfügen
     
    $name "";  // neue Eigenschaft einfügen

     
    $sql "SELECT * FROM user";
     
    $res mysql_query($sql);
     while (
    $row mysql_fetch_assoc($res)) {
     
    $id htmlspecialchars($row['id']);
     
    $name htmlspecialchars($row['name']);
    // ...

     
    echo '
      <div>
      <div>' 
    $this->id $id '</div>                // mit $this zuweisen
      <div>' 
    .  $this->name $name '</div>     // mit $this zuweisen
    // ...
    </div>'

    Und in der Datei liste.php ausgeben
    PHP-Code:
    // Auszug aus der Datei liste.php

    $user = new User();

    echo 
    '<div>' $user->id '</div>';
    echo 
    '<div>' $user->name '</div>';

    // ... 
    In der Datei liste.php müsste man auch irgendwie eine Schleife einbauen...
    Ist meine Idee umsetzbar?

    Kurz: Ich möchte die Klassen/Funktionen von der Ausgabe (DIV, CSS, usw) trennen.


  • #2
    Vielleicht solltest du dich mal mit Templatesystemen auseinander setzen.

    Themenmoderation:
    [?] Verschoben von HTML, Usability und Barrierefreiheit

    Kommentar


    • #3
      ja template system is a gute idee und
      zum googlen gleich ein paar stichworte: smarty, dwoo, savant3
      PHP-Code:
      if ( $humans >= ) {
         
      war ();

      Kommentar


      • #4
        Zitat von PhillKill12 Beitrag anzeigen
        ja template system is a gute idee und
        zum googlen gleich ein paar stichworte: smarty, dwoo, savant3
        Danke, ich werde mich voll mit smarty beschäftigen.
        Gibt es denn auch eine Möglichkeit, diese Templates mit Klassen zu verbinden?

        Kommentar


        • #5
          Ja. PHP-Code.
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            Zitat von nikosch Beitrag anzeigen
            Ja. PHP-Code.
            So und das Ganze bitte nochmal als grammatisch richtigen Satz.

            Kommentar


            • #7
              Templates und Klassen (genauer: Objekte) kann man über nativen PHP-Code miteinander verbinden.
              --

              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


              --

              Kommentar


              • #8
                Dankeschön!
                Somit wäre das Thema für mich erledigt.

                Kommentar

                Lädt...
                X