Newsscript Problem

m4rtin

Grünschnabel
Hallo,

Ich möchte beim erstellen einer News nur die ID des Autors angeben, damit es zu keinen Fehldarstellungen des Namens kommt, wenn der Autor seinem Namen ändert.

Die Daten des Autors werden in der usertable gespeichert. Wie ordne ich nun die ID des Autors aus der newstable den ID und dessen Namen aus der usertable zu?

Mit folgenden Query habe ich es schonmal geschafft, alle notwendigen Daten anzuzeigen. Jedoch wird die gleiche News mit jeden Autor angezeigt. Wie schaffe ich es nun, das nur der richtige Autor angezeigt wird
PHP:
mysql_query("SELECT NewsID, NewsTime, NewsDate, NewsTitle, NewsText, NewsUserID, UserName FROM pms_news, pms_user ORDER BY NewsID DESC LIMIT 0, 15");

mfg Martin
 
Zuletzt bearbeitet:
Bin wohl noch nicht ganz wach, hab die Frage glaub ich nicht so richtig verstanden:
Du speicherst, wenn du News einträgst die ID des Autors. In einer extra Tabelle sind wiederum die ganzen Autoren samt ihere ID und dem Namen gespeichert. Richtig?

Dann würd ichs so machen, angenommen deine Tabellen schauen so aus:
Code:
Tabelle pms_news:
__|__id__|______newstxt______|__autorid__|__
__|___1__|___Bla bla test____|_____2_____|__
__|___2__|___Bla bub again___|_____1_____|__
  |      |                   |           |


Tabelle pms_user:
__|__id__|____aname____|__
__|___1__|___m4rtin____|__
__|___2__|___nochwer___|__
  |      |             |
Dann müsste der PHP-Code ungefär so aussehen:
PHP:
$newsdata = mysql_fetch_array(mysql_query("SELECT * FROM `pms_news` WHERE `id`='$selid'"));
$newsautor = mysql_fetch_array(mysql_query("SELECT `aname` FROM `pms_user` WHERE `id`='".$newsdata["autorid"]."'"));
$newsautor = $newsautor["autor"];

echo "Message: ".$newsdata["newstxt"]." von ".$newsautor;

Geht glaub ich auch wesentlich einfach mit join-Abfragen oder so, kenn mich da abba net so gut aus.
 
Zurück