Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP Sortirte/Verschachtelte Liste Ausgeben

Einklappen

Neue Werbung 2019

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

  • PHP Sortirte/Verschachtelte Liste Ausgeben

    Sooo mein problem klingt auf den ersten Blick evt. ein bisschen einfach aber das ist doch komplizierter als gedacht !!!

    Ich mochte eine Liste ausgeben lassen die Sortiert ist und einen Zeilenumbruch beinhaltet. Das mit dem Zeilenumbruch ist schon gelöst und damit ihr mein Problen versteht habe ich einen Screen vom jetzigen Ergebniss gemacht und ein Wunschergebniss gebalstet wie es eigentlich aussehen soll !!!

    Datenbanken auf die Zugegriffen wird oder die zur verfügung stehen:

    Pferde (Allgemeine Daten)
    Rassen (Beinhaltet nur die vertretenen Rassen in der Tabelle Pferde)

    So schaut das jetz aus ...



    und sooo hätte ich das gerne...

    Also eine Sortierung nach Rassen



    Und hier ist der Code vom Ergebniss wie es jetz ausschaut...

    PHP-Code:
      <p align="center"><u> Meine Privatpferde</u></p>
      
      <table border="0" cellspacing="4" cellpadding="2" class="TabPferdelist">
    <tr> 
    <?php

    include("db.php");

    $id "$_GET[id]";


    $Ergebnis mysql_query("SELECT * FROM Pferde WHERE Besitzer ='" $_SESSION["user_nickname"] . "' ORDER BY Rasse ASC") OR die (mysql_error());
    // Wenn das Ergebnis 0 ist gib aus
         
    if (@mysql_num_rows($Ergebnis) == 0) {
        echo 
    "  <td>Du hast keine Privatpferde.</td>  ";
        }

        else {
    $abfrage mysql_query("SELECT * FROM Pferde WHERE Besitzer ='" $_SESSION["user_nickname"] . "' ORDER BY Rasse ASC") OR die (mysql_error());
    $num mysql_num_rows($abfrage);
    for (
    $i=0$i<$num$i++)
    {
    $Name=mysql_result($abfrage$i"Name");
    $Rasse=mysql_result($abfrage$i"Rasse");
    $PAlter=mysql_result($abfrage$i"PAlter");
    $Besitzer=mysql_result($abfrage$i"Besitzer");
    $Pfleger=mysql_result($abfrage$i"Pfleger");
    $Wachstum=mysql_result($abfrage$i"Wachstum");
    $ID=mysql_result($abfrage$i"ID");

    if(
    $i%3==0) { echo "<tr></tr>"; }
    echo 
    "

    <td>
    <div align=\"right\">

    <table border=0 class=\"TabPferdelistKlein\">
    <tr>
    <td colspan=3 class=\"pferdelist3\"><div align=\"left\"><b>
    $Name</b></div>
    </tr> 
    <tr>
    <td  width=\"70px\" rowspan=3><div align=\"left\"><img src=\"../Grafiken/VKopf/
    $Name.jpg\" /></div></td>
    <td><div align=\"left\"><b>Rasse:</b></div>
    <td><div align=\"left\">
    $Rasse</div>
    </tr>
    <tr>
    <td><div align=\"left\"><b>Alter:</b></div>
    <td><div align=\"left\">
    $PAlter Jahre</div>
    </tr>
    <tr>
    <td><div align=\"left\"><b>Pfleger:</b></div>
    <td><div align=\"left\">
    $Pfleger</div>
    </tr>
    <tr>
    <td colspan=3 class=\"pferdelist3\"><div align=\"right\"><a href=\"
    $Wachstum.stecki.php?id=$ID\">... mehr Informationen</a></div>
    </tr>
    </table>

    </div>
    </td>
                                        
    "
    ;
    }}
    ?>
    </tr>
    </table>


  • #2
    Gruppenbruch (Standardverfahren) - PHP.de Wiki
    --

    „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


    • #3
      jaaa und wie frickel ich das dazwischen ??
      ich hab ja keine arrays und so ohh mannn...

      PHP-Code:
      <pre><?php
       
      $array 
      = array 
        (
        
      'Alf' ,
        
      'Bibi Blocksberg' ,
        
      'Bibo' ,
        
      'Biene Maja' ,
        
      'Peter Pan' ,
        
      'Urmel aus dem Eis' ,
        );
       
      $last_character null;
       
      // Elemente durchlaufen
      foreach ($array as $entry) {
          
      $character $entry[0];
       
          
      // Gruppenbruch, neuer Anfangsbuchstabe
          
      if ($last_character != $character) {
              echo 
      'Buchstabe: ' $character '<br />';
          }
          echo 
      '  ' $entry '<br />';
       
          
      // neuen Vergleichswert setzen
          
      $last_character $character;
          }
       
      ?></pre>

      Kommentar


      • #4
        ohh mannn, ja. Es wird Dir hier niemand Deine Arbeit machen. Ein wenig abstrahieren muss man schon können als Programmierer. http://www.php.de/php-einsteiger/489...rundlagen.html
        --

        „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


        • #5
          ich hab ja keine arrays und so
          Wenn die Zuordnungen in den Tabellen Pferd zu Rasse vernünftig hergestellt sind, kannst doch Arrays daraus machen.
          Dann hast Du, was Du brauchst...
          Competence-Center -> Enjoy the Informatrix
          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

          Kommentar


          • #6
            Zudem steht da:

            PHP-Code:
            // Elemente durchlaufen
            foreach ($array as $entry) { 
            Mit halbwegs Programmiererfahrung sollte man die Schleife auch anderweitig benuzten können.
            --

            „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


            • #7
              Versuch bitte das Prinzip zu verstehen, das hinter dem Gruppenbruch steht. Einfach mal hier und da was rauskopieren, vielleicht klappts ja auf Anhieb geht haeufig schief.


              PS: Wenn du dich schon kreativ und passioniert nennst, dann lass es doch bitte keine hohlen Phrasen sein ^^ auch wenns in der Medienbranche so unerklaerlicherweise modern zu sein scheint.
              "Mein Name ist Lohse, ich kaufe hier ein."

              Kommentar


              • #8
                PHP-Code:
                $SQL="SELECT * FROM pferde_rasse ORDER BY Rasse";
                $Ergebniss_Rasse=mysql_query($SQL,$Connect);
                WHILE (
                $ROW=mysql_fetch_array($Ergebniss_Rasse))
                {
                   
                $Rasse=$ROW['Rasse'];
                   
                $SQL="SELECT * FROM pferde WHERE Rasse=$Rasse";
                   
                $Ergebniss_Pferde=mysql_query($SQL,$Connect); 
                   WHILE (
                $Row_Pferde($Ergebniss_Pferde))
                   {
                       
                $Pferd=$Row_Pferde['Pferd']
                       ECHO 
                "$Rasse : $pferde<br>";
                   }

                So sollte es funktionieren musst nur richtige Werte Eintragen und Formatieren
                Manchmal aber nur Manchmal sehe ich den Wald vor lauter Bäumen nicht mehr

                Kommentar


                • #9
                  1. Schön, daß der Lerneffekt wieder mal mit Füssen getreten wird!
                  2. Auch schön, daß wir SELECT * wieder gut heißen...

                  Danke für den imho überflüssigen Beitrag...
                  Competence-Center -> Enjoy the Informatrix
                  PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                  Kommentar


                  • #10
                    Queries in Schleifen absetzen ist sowieso Unsinn, weil inperformant und unnütz.
                    --

                    „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

                    Lädt...
                    X