Zum Inhalt springen

PHP - dynamische Links


Empfohlene Beiträge

Folgender Code:

echo "<center><table border=1 cellpadding=5 width=500>";

while($liste = mysql_fetch_assoc($result))

{

echo "<tr>";

foreach($liste as $var)

{

echo "<td>$var</td>";

}

echo "</tr>";

}

echo "</table></center>";

gibt den kompletten Inhalt einer Tablle aus einer DB in tabllenform wieder.

Frage:

Kann ich die Werte EINER Spalte als dynamische Links verwenden?

Wenn ja, wie?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

meinst Du sowas?


$verbindung = mysql_pconnect("localhost","user_id_select","passwort_id_select");
mysql_select_db("datenbank", $verbindung);
$sql = "SELECT link FROM Tabelle";
$ergebnis = mysql_query($sql, $verbindung);

if (mysql_numrows($ergebnis)==0)
{ }
else
{
while($daten = mysql_fetch_object($ergebnis))
{
echo '<a href="'.$daten->link.'">Link</a>';
}
}
mysql_free_result($ergebnis);
mysql_close($verbindung);
[/php]

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich glaube das könnte hinkommen.

Laut Deiner Erläuterung wird ein zusätzlicher Link eingebaut und es wird auch nicht die komplette Tabelle ausgegeben sondern nur die Anzahl der Datensätze als Links verfügbar gemacht. Es muss aber die komplette Tabelle ausgegeben werden und aus einer Spalte sollen die Werte als Link funktionieren. Deshalb auch die 'foreach - Schleife' für die komplette Tabelle.

Jetzt musst Du mir nur noch genau erläutern was diese Zeile geneu macht???

echo '<a href="'.$daten->link.'">Link</a>';

Link zu diesem Kommentar
Auf anderen Seiten teilen

Anstatt mit mysql_fetch_assoc liest Du die Datensätze mit meiner Methode aus.

Du änderst die SQL Anweisung dann so, dass alle Spalten ausgelesen werden sollen und dann läst in der while Schleife alle Spalten der Tabelle ausgeben mit


echo $daten->spaltenname;
[/php]

Und wie in Deinem Beispiel baust Du um die Ausgabe herum Deine Tabelle.

Die Zeile echo '<a href="'.$daten->link.'">Link</a>'; gibt den Inhalt der Spalte link aus und macht gleichzeitig daraus einen HTML Link.

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

worin besteht eigentlich genau der unterschied von mysql_fetch_assoc zu mysql_fetch_object?

Bei ..._assoc werden die Daten doch in einem assoziativen Array abgelegt und und wie funktioniert das bei ..._object???

und dazu dass ich die daten mit

echo $daten->spaltenname;

auslesen soll hab ich noch ne Frage.

Der spaltenname muss doch eine Variabel sein, wenn ich mir die ergebnisse aus dem speicher über eine while() anzeigen lassen will, oder etwa nicht? Wie bewerkstellige ich das, nach Deinem Vorschlag?

Es gibt zwar genug methoden von PHP z.B: mysql_list_field die einiges ermöglichen, aber irgendwie steige ich nicht ganz hinter Deinen Vorschlag

Link zu diesem Kommentar
Auf anderen Seiten teilen


$verbindung = mysql_pconnect("localhost","user_id_select","passwort_id_select");
mysql_select_db("datenbank", $verbindung);
$sql = "SELECT link, ort, name, vorname FROM Tabelle";
$ergebnis = mysql_query($sql, $verbindung);

if (mysql_numrows($ergebnis)==0)
{ }
else
{
while($daten = mysql_fetch_object($ergebnis))
{
echo '<a href="'.$daten->link.'">Link</a>';
echo $daten->ort."<br>";
echo $daten->name."<br>";
echo $daten->vorname."<br>";
}
}
mysql_free_result($ergebnis);
mysql_close($verbindung);
[/php]

Schau mal hier.

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

erstmal großen Dank für Deine Hilfe...

aber daraus ergibt sich ein weiteres problem für mich.

Wie kann ich über dies Link eine Funktion aufrufen, die den Wert des jeweiligen Datensatzes übergibt. Ein Formular wäre sinnlos, da die Datenmenge zu groß ist und ich mir auch sonst alles hätte sparen können...

Bsp.:

<a href='seite.php?function($liste->name)'>[".$liste->name."]</a>

irgenwie so muss das doch gehen, dass ich den Wert des Attributs name an eine Funktion übergeben kann???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...