Tabellen in PHP anzeigen.

Alles, was PHP betrifft, kann hier besprochen werden.

Tabellen in PHP anzeigen.

Postby Neo-DerHacker » 19. August 2005 15:50

Hi ich habe eine Tabelle mit 5 Felder im meinem PHPMyAdmin eingetragen:

Code: Select all
CREATE DATABASE `links` ;
ALTER TABLE `links`
ADD `id` VARCHAR( 5 ) NOT NULL ,
ADD `name` VARCHAR( 20 ) NOT NULL AFTER `id` ,
ADD `size` VARCHAR( 20 ) NOT NULL AFTER `name` ,
ADD `beschreibung` VARCHAR( 20 ) NOT NULL AFTER `size` ,
ADD `sprache` VARCHAR( 20 ) NOT NULL AFTER `beschreibung` ;


Wenn ich jetzt ein paar Einträge mache, wie kann ich diese dann (per $id) in einer PHP-Datei anzeigen lassen?

MfG Neo-DerHacker
Neo-DerHacker
 
Posts: 61
Joined: 16. April 2005 22:13
Location: 127.0.0.1

Postby Wiedmann » 19. August 2005 15:53

Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby jakimo72 » 20. August 2005 03:53

Wie wärs mit
Code: Select all
<html>
<head>
<title>Links</title>
<style>
body { BACKGROUND-COLOR: white;
           FONT-FAMILY: Verdana, Helvetica, sans-serif;
           FONT-SIZE: 10pt; }
table, td { FONT-FAMILY: Verdana, Helvetica, sans-serif;
               FONT-SIZE: 10pt; }
tr.even {background: #E0E8F0; }
tr.odd {background: #F4F8FC;}
th.res {background: #0D5AAC; color:white}
th a {color:white; text-decoration: none}
th a:hover {color: #F0F0CC; text-decoration: none}
td.res {}
</style>
</head>
<body>
<?php

  require_once('DB.php');

  $dsn = 'mysql://root:@localhost/links';
 
  $query = "Select * from links";             

  $options = array(
                'debug'       => 2,
                'persistent'  => true
                );

  $db =& DB::connect($dsn, $options);
   if (DB::isError($db))
        {
            echo 'Keine Verbindung zur Datenbank '.
                  $dsn.'.';
           die();
        }
       
        $db->setFetchMode(DB_FETCHMODE_ASSOC);
       define('TUETEL','"');


    /*
     * Wenn der erste Datensatz usw. übergeben wurden:
     */
        if(isset($_REQUEST['ersterDatensatz']))
            $ersterDatensatz=$_REQUEST['ersterDatensatz'];
        else
            $ersterDatensatz=0;
 
        if(isset($_REQUEST['anzahlDatensatz']))
            $anzahlDatensatz=$_REQUEST['anzahlDatensatz'];
        else
            $anzahlDatensatz=30;
           

 
$ergebnis = $db->Query($query);

if(DB::isError($ergebnis))
  {
    echo 'Fehlerhaftes Select: '.$query.'.';
    die();
   
  } 

$numrows = $ergebnis->numRows();

//$info = $db->tableInfo($ergebnis);
$info = $ergebnis->tableInfo();

if(isset($_REQUEST['order']))
  $query .= " order by ".
    TUETEL.$info[$_REQUEST['order']]['name'].TUETEL;
if(isset($_REQUEST['desc']))
  $query .= " desc";

$ergebnis = $db->limitQuery($query,$ersterDatensatz,$anzahlDatensatz);
if(DB::isError($ergebnis))
  {
    echo 'Fehlerhaftes Select: '.$query.'.';
    die();
  } 
 


   
  /*
 * Ein Formular zu Eingabe der ersten Datensatznummer und der Anzahl der Datensätze
 */
echo "<form method=\"get\" action=\"\" >";
    if($numrows > $anzahlDatensatz)
    {
    ?>
     Erster Datensatz: <input type="text" name="ersterDatensatz" size="3" value="<?php
       echo $ersterDatensatz; ?>">&nbsp;
    <?php
   
    }
   
    ?>   
     Anzahl Datensätze: <input type="text" name="anzahlDatensatz" size="3" value="<?php
       echo $anzahlDatensatz; ?>">&nbsp;
       <input type=submit class="button"  value="Auswahl" name="auswahl"><br>
     
     <?php
 
 if(isset($_REQUEST['order']))
  echo '<input type="hidden" name="order" value="'.$_REQUEST['order'].'">';
 if(isset($_REQUEST['desc']))
  echo '<input type="hidden" name="desc" value="1">';
 
$zaehler=0;

echo "<br>";
echo '<table class="res" border="0">';

echo "<tr>";
foreach($info as $key => $col)
  echo '<th class="res">&nbsp;'.$col['name'].'&nbsp;'.
       " <a href=\"".$_SERVER['PHP_SELF']."?ersterDatensatz=$ersterDatensatz&anzahlDatensatz=$anzahlDatensatz&order=$key&desc=1\">▲</a>".
       "<a href=\"".$_SERVER['PHP_SELF']."?ersterDatensatz=$ersterDatensatz&anzahlDatensatz=$anzahlDatensatz&order=$key\">▼</a>".
       "&nbsp;</th>";
echo "</tr>"; 
while ($row =& $ergebnis->fetchRow()) {
   $zaehler++;
   if($zaehler % 2==0)   
     echo "<tr class=\"even\">";
   else   
     echo "<tr class=\"odd\">";
   $temp =0; 
   foreach($row as $key => $value)
   {
      switch(strtolower($info[$temp]['type']))
      {
      case 'real': settype($value,'double'); break;
      case 'int': case 'number': if(!stristr($info[$temp]['name'],'jahr'))settype($value,'integer'); break;
      }       
      echo '<td class="res"';
      if(is_integer($value) || is_float($value))
        echo ' align="right"';
      echo '>';
      echo $value."</td>";
      $temp++;
   }
   echo "</tr>";
}

//echo '<tr class="even"><td class="res">12</td><td class="res">3244</td></tr>';
echo "</table>";

echo "</form>";
if($numrows > $anzahlDatensatz)
{
    $hidden=''; 
    if(!empty($hiddenFields))
    foreach($hiddenFields as $key => $value)
    {       
      $hidden = $hidden.'&'.$key.'='.$value;
    } 
   
  if($ersterDatensatz>0)
  {
    $tmp = $ersterDatensatz - $anzahlDatensatz;
    if($tmp<0)
      $tmp=0;
   
    echo "<a href=\"".$_SERVER['PHP_SELF']."?ersterDatensatz=$tmp&anzahlDatensatz=$anzahlDatensatz";
    if(isset($_REQUEST['order']))
      echo '&order='.$_REQUEST['order'];
    if(isset($_REQUEST['desc']))
      echo '&desc=1';
    echo "\"> Vorherige Seite </a>";
   
  }
  else
    echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
  echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; 
  if($ersterDatensatz+$anzahlDatensatz < $numrows)
  {
    $tmp = $ersterDatensatz + $anzahlDatensatz;
    if($tmp>=$numrows)
      $tmp=$numrows;
    echo "<a href=\"".$_SERVER['PHP_SELF']."?ersterDatensatz=$tmp&anzahlDatensatz=$anzahlDatensatz";
    if(isset($_REQUEST['order']))
      echo '&order='.$_REQUEST['order'];
    if(isset($_REQUEST['desc']))
      echo '&desc=1';   
    echo "\"> Nächste Seite </a>";
  }         
   
}

?>
</body>
</html>
User avatar
jakimo72
 
Posts: 151
Joined: 07. February 2005 13:25
Location: Hamburg-Barmbek


Return to PHP

Who is online

Users browsing this forum: No registered users and 17 guests