tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
351
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Fruitgum
    Fruitgum Fruitgum ist offline Mitglied Gold
    Registriert seit
    Oct 2007
    Beiträge
    187
    Hallo,

    ich habe eine Tabelle deren Inhalt ich gerne durch Drücken der Spaltenbezeichnung Sortieren kann.

    PHP-Code:
    <div class="box2">
    <?
    $id
    =$_GET['id'];
    $bildo=$_GET['datei'];
    $sql2="SELECT * FROM $tbl_name WHERE id='$id'";
    $result2=mysql_query($sql2);
    $rows=mysql_fetch_array($result2);

    ?>
    <table cellspacing="0">
      <caption></caption>
          <br>
        <br>
        <tr>
        <th scope="col" class="name">Inhalt</th>
        </tr>
        <tr>
         <td class="alt2"><a href=""><? { echo $rows['titel'];} ?></a><p align="left"><br>
         <? echo $rows['eintrag']; ?>
         <p><br>
         </td>
         </tr>
        </table>     
      </div>

    <div class="box3">

      <table cellspacing="0">
      <caption></caption>
      <tr>
         <th width="26%" class="name" scope="col">Datum</div></th>
         <th width="31%" class="name" scope="col">Titel</th>
         <th width="43%" class="name" scope="col">Ort</th>
      </tr>
      </table>
    <?php
    $sql
    ="SELECT * FROM $tbl_name ORDER BY id DESC LIMIT 7"
    $result=mysql_query($sql);
    while(
    $rows=mysql_fetch_array($result)){  
    ?>
      <table cellspacing="0">

      <tr>
         <td width="26%" class="alt2"><a href="konzerte_view.php?id=<? echo $rows['id']; ?>"><? echo $rows['email']; ?></a></td>
         <td width="31%" align="right" class="alt"><? echo $rows['titel']; ?></td>
         <td width="43%" align="right" class="alt"><? echo $rows['ort']; ?></td>
         </tr>          
        </table>
    <?php
    }
    mysql_close();
    ?>
    Wie kann ich das machen ohne die PHP mehrmals anzulegen?



    LG
     

  2. #2
    Avatar von Loomis
    Loomis Loomis ist offline Mitglied Bunt
    Registriert seit
    Jul 2002
    Ort
    Aschaffenburg
    Beiträge
    1.538
    Hi,

    hier ein ganz simples Beispiel:

    Zuerst die Überschriften verlinken:
    HTML-Code:
    <th width="31%" class="name" scope="col"><a href="?sortieren=titel">Titel</a></th>

    Und dann folgendes in PHP machen:
    PHP-Code:
    if( !isset( $_GET['sortieren'] ) )
    {
        
    $sort 'id'// Wenn kein Sortieren-Link angeklickt wurde, wird nach ID sortiert.
    }
    else
    {
        
    $sort htmlspecialchars$_GET['sortieren'] );
    }
    $sql 'SELECT * FROM $tbl_name ORDER BY ' .$sort' DESC LIMIT 7'

    Hoffe du kannst etwas damit anfangen.
     
    mfg
    --------------------------------------------------------------------------------
    Kein Support via PN, Email, ICQ, Brieftaube oder Flaschenpost!

    Besucht den tutorials.de-Chat | Anleitung
    RTFM - PHP-Handbuch - MySql Handbuch
    --------------------------------------------------------------------------------
    Surftipp...Der Postillon
    --------------------------------------------------------------------------------
    Signatur v2.2

  3. #3
    Avatar von Fruitgum
    Fruitgum Fruitgum ist offline Mitglied Gold
    Registriert seit
    Oct 2007
    Beiträge
    187
    Danke dir Loomes! Hast mir das schön anschaulich zum Verständnis gegeben. Ich lerne so besser.
     

  4. #4
    Avatar von Fruitgum
    Fruitgum Fruitgum ist offline Mitglied Gold
    Registriert seit
    Oct 2007
    Beiträge
    187
    Huhu,

    Ich habe es jetzt so gemacht, und es geht auch super.

    PHP-Code:
      <table cellspacing="0">
      <caption></caption>
      <tr>
         <th width="26%" class="name" scope="col"><a href="?sortieren=email">Datum</div></th>
         <th width="31%" class="name" scope="col"><a href="?sortieren=titel">Titel</th>
         <th width="43%" class="name" scope="col"><a href="?sortieren=name">Ort</th>
      </tr>
      </table>
    <?php
    if( !isset( $_GET['sortieren'] ) ) 

        
    $sort 'id'

    else 

        
    $sort htmlspecialchars$_GET['sortieren'] ); 

    $sql "SELECT * FROM $tbl_name ORDER BY $sort DESC LIMIT 7"
    $result=mysql_query($sql);
    echo 
    mysql_error();
    while(
    $rows=mysql_fetch_array($result)){  
    ?>
      <table cellspacing="0">

      <tr>
         <td width="26%" class="alt2"><a href="konzerte_view.php?id=<? echo $rows['id']; ?>"><? echo $rows['email']; ?></a></td>
         <td width="31%" align="right" class="alt"><a href="konzerte_view.php?id=<? echo $rows['id']; ?>"><? echo $rows['titel']; ?></td>
         <td width="43%" align="right" class="alt"><a href="konzerte_view.php?id=<? echo $rows['id']; ?>"><? echo $rows['name']; ?></td>
         </tr>          
        </table>
    <?php
    }
    mysql_close();
    ?>
    Jetzt habe ich noch folgende Probleme:

    1. Wenn ich jetzt mir etwas sortieren lasse, so wird alles sortiert aber es wird nicht mehr der letzte Eintrag ausgegeben.

    2. Wenn ich jetzt sortiert habe und mir dann ein Eintrag ausgeben lasse ist die sortierung wieder so als wäre nicht sortiert.

    Ich denke zu 1. muss ich mirt den letzten Eintrag irgendwie mitgeben lassen ohne Selcet auf DESC LIMT 1 zu setzen.



    Ich möchte nicht das du mir jetzt einen Code schreibst, vielleicht nur ansatzweise. am besten wäre es wenn ich erfahre mit welchen PHP-Befehlen ich das lösen könnte und einen kleinen ansatz. Ich will es ja verstehen!


    Grüße
     

Ähnliche Themen

  1. Tabelle Sortieren
    Von Napofis im Forum Relationale Datenbanksysteme
    Antworten: 9
    Letzter Beitrag: 05.06.09, 17:24
  2. Tabelle 1 nach Tabelle 2 sortieren
    Von resterampe im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 13.05.08, 07:10
  3. Tabelle sortieren.
    Von Gerardo im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 24.01.08, 09:19
  4. Tabelle sortieren
    Von kevkev im Forum PHP
    Antworten: 9
    Letzter Beitrag: 02.02.06, 16:23
  5. Tabelle sortieren
    Von hudo im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 0
    Letzter Beitrag: 10.03.05, 23:59