Webstatt.org - Community seit 2006 - 2012 (2024?)

ID an Link weitergeben

Avatar user-177
26.08.2009 20:29

Hi Jungs, ich brauch mal etwas Hilfe.

Also ich rufe aus der Datenbank 2 tabellen auf.
Den Titel lass ich anzeigen (das klappt)
jeder dieser Titel soll dann einen Link erhalten mit der ID, eigentlich muss ich an die Adresse nur die ID anhängen. Das klappt aber nicht!

<?php   $result = mysql_query("SELECT * FROM ".$dbx."_events ORDER BY id DESC LIMIT 0,20"zwinkern;   

while($row = mysql_fetch_array($result)) {

// Ergebnis in Variable schreiben

$feld1 = $row["titel"];
$feld2 = $row["id"];

// Daten anzeigen
"<a href=index.php?d=events&s=;echo $feld2>";echo $feld1."</a><BR>"; } ?>


was mach ich denn falsch???

user-343
26.08.2009 21:04

Wie wärs mit:


<?php

$result = mysql_query("SELECT * FROM ".$dbx."_events ORDER BY id DESC LIMIT 0,20"zwinkern;

while($row = mysql_fetch_array($result)) {
// Ergebnis in Variable schreiben
$feld1 = $row["titel"];
$feld2 = $row["id"];

// Daten anzeigen
echo "<a href=index.php?d=events&s= $feld2>$feld1</a><br>";
} ?>


Alternativ geht auch für das echo:
printf("<a href=index.php?d=events&s= %s>%s</a><br>", $feld1, $feld2);

Avatar user-177
27.08.2009 17:53

Dankeschön Fettes Grinsen

Avatar user-177
27.08.2009 18:41

Ich brauch vieleicht noch einmal hilfe,
Ich will nach den Link noch ein Datenbankfeld auslesen, dieses ist aber ein Unix Timestamp. Das ganze muss ja nun umgewandelt werden ind Tag , Monat

Dabei will ich den Monat aber gern in Schriftform anzeigen lassen!

Bsp. 1. September

Ich scheitere aber schon am normalen auslesen...! Was mach ich denn falsch?
<?php  $result = mysql_query("SELECT * FROM ".$dbx."_events ORDER BY id DESC LIMIT 0,10"zwinkern;     
while($row = mysql_fetch_array($result)) {

// Ergebnis in Variable schreiben
$feld1 = $row["titel"];
$feld2 = $row["id"];
$datum = $row["datumvon"];
$datum = date("d.m.Y",$timestamp);

// Daten anzeigen
echo "<img src=icon/03/10/05.png />&nbsp;<a class=partydesk a href=index.php?d=events&s=$feld2>$feld1</a>" echo "$datum <br>"; }

?>

user-203
27.08.2009 18:55

Statt
$datum = $row["datumvon"];     
$datum = date("d.m.Y",$timestamp);

sollte es wohl
$timestamp = $row["datumvon"];     
$datum = date("d.m.Y",$timestamp);

heißen, die variable $timestamp gibt es sonst ja bei dir nicht.

Dann ist noch in Zeile 11 ein Fehler.
Da müsstest du das echo am ende entweder durch einen Punkt ersetzen oder davor (hinter den letzten echo-Befehl) ein Semikolon setzen.


zu den deutschen Monaten schau dir mal das an (google Suche, habs nicht genau überprüft):
http://www.perun.net/2004/04/20/php-lernen-71-deutschsprachiges-datum/

Denkt dran, Kinder auf dem Rücksitz verursachen Unfälle, Unfälle auf dem Rücksitz verursachen Kinder.
Avatar user-177
28.08.2009 16:38

ach ein TRAUM Fettes Grinsen user-158ke klappt super !

Avatar user-177
06.09.2009 18:15

nun, da kam mir doch noch ein problem zuvor.
Wie bekomm ich es hin, das die Abfrage und Anzeige, Termine nicht mehr anzeigt die vorbei sind. Da Steh ich gerade mal auffen Schlauch!

<?php  $result = mysql_query("SELECT * FROM ".$dbx."_events ORDER BY datumvon ASC LIMIT 0,10"zwinkern;     
while($row = mysql_fetch_array($result)) {

// Ergebnis in Variable schreiben

$feld1 = $row["titel"];
$feld2 = $row["id"];
$timestamp = $row["datumvon"];
$datum = date("d.m.Y",$timestamp);

// Daten anzeigen
echo "<img src=icon/03/10/05.png />&nbsp;<a class=partydesk a href=index.php?d=events&s=$feld2>$feld1</a>"; echo "<div align=right style=\"border-bottom:1px solid; border-color:#ddd \"><em>$datum&nbsp;&nbsp;</em></div>"; } ?>

user-343
07.09.2009 12:53

Was hat datumvon fürn Spaltentyp? Wenn es DATETIME oder DATE ist, kannst du ganz einfach mit einer WHERE-Klausel fragen, ob datumvon < NOW() ist. Sollte es eine Spalte sein, die einen timestamp enthält, müsstest du die Spalten zuerst konvertieren, entweder die interger-Spalte mit FROM_UNIXTIME() oder NOW() mit UNIX_TIMESTAMP().

Avatar user-177
07.09.2009 19:57

mhh, der Typ laut mysql ist bigint(20) ??? Was kann ich denn damit anfangen Fettes Grinsen

user-343
07.09.2009 20:16

Du willst also nur die Einträge, die noch nicht vorüber sind? Müsste so funktionieren:

$result = mysql_query("SELECT * FROM ".$dbx."_events WHERE FROM_UNIXTIME(datumvon) > NOW() ORDER BY datumvon ASC LIMIT 0,10"zwinkern;


Vorausgesetzt ich vertausch da nichts.

Avatar user-177
10.09.2009 18:19

Original von user-343
Du willst also nur die Einträge, die noch nicht vorüber sind? Müsste so funktionieren:

$result = mysql_query("SELECT * FROM ".$dbx."_events WHERE FROM_UNIXTIME(datumvon) > NOW() ORDER BY datumvon ASC LIMIT 0,10"zwinkern;


Vorausgesetzt ich vertausch da nichts.


KLAPPT SUPER .... Vielen user-158k! *Daumen hoch*