Werte aus Datenbank in Template anzeigen

Ich hab da mal ein Problem, das meine PHP Kenntnisse leicht übersteigt (wie so ziehmlich jedes Problem dass mit PHP zu tun hat).

Ich hab ein recht grosses und aufwendiges HTML Template, in dem ich an ein paar Stellen Werte aus einer Datenbank einfügen will. Die Datenbank besteht aus fünf Werten, wovon vier angezeigt werden sollen, der fünfte is die ID. Bisher war es immer so dass nur der zuletz eingetragene Datensatz angezeigt werden musste, was ja nun auch kein Problem ist. Nun soll das ganze aber in der Lage jeden beliebigen Datensatz anzuzeigen indem man die ID in den Link einfügt und da is bei mir leider Schluss.

Wär super wenn mich da mal jemand in die richtige Richtung schubsen könnte.
 
Hallo,
also es kommt natürlich darauf an was für ein Templatesystem du verwendest (z.B. Smarty) vom Grundprinzip her sollte es allerdings so funktionieren:
PHP:
<?php
    require('connect.php');

    $sql = 'SELECT * FROM `tabelle` WHERE `id` = "'.intval($_GET['id']).'"';
    $query = mysql_query($sql) or die(mysql_error());

    while ($ds = mysql_fetch_object($query)){
        // Hier dann die Variable ($ds->id) ins Template einfügen, das funktioniert bei jedem Templatesystem anders
    }
?>

mfg
forsterm
 
Templetesystem hab ich keins, das is einfach 'n Design das ich mal in Photoshop gemacht hab und dann eben etwas umgebaut für die Datenbank.

Das sieht im moment so aus:

PHP:
$sql = "SELECT
                id,
                wert1,
                wert2,
                wert3,
                wert4
            FROM
                tabelle
            ORDER BY
                id DESC LIMIT 1";
    $result = mysql_query($sql) OR die(mysql_error());
    $row = mysql_fetch_assoc($result);
Und an den entsprechenden stellen kommt dann eben:
PHP:
echo $row['wertx'];

Nun soll halt wenn ich die Datei mit index.php?id=4 verlink der Datensatz mit id=4 benutzt werden.
Ich mag mich allerdings auch nich wegen einer Seite extra in smarty reinfummeln.
 
Brauchst du auch nicht...
SQL:
SELECT
    id,
    wert1,
    wert2,
    wert3,
    wert4
FROM
    tabelle
WHERE id = '$id'
ORDER BY
    id DESC
LIMIT 0,1;

Einfach eine Where-Clause einfügen, die nach der ID filtert ;)

forsterm: Da PHP an sich schon eine Templatesprache ist, finde ich Smarty unnötig :rolleyes:
 
PHP:
echo '<table border="0" cellspacing="0" cellpadding="0">';
while ($data = mysql_fetch_assoc($result))
{
    echo "<tr><td>".$data['feld1']."</td><td>".$data['feld2']."</td></tr>";
}
echo '</table>';
Ich denke mal du meintest so etwas, wie man mehrere Zeilen ausgibt.
 
Zurück