iamdesign
Legacy Member
Hoy,
Ik ben bezig met een nieuwssysteem te schrijven in php, met smarty als template engine
Nu is mijn probleem dat ik niet weet hoe ik de naam van de poster kan weergeven.
Mijn DB structuur ziet er als volgt uit:
Tabel eann_members
userid(prim key, autoincrement)
naam(tekst)
Tabel eann_news
newsid(prim key, autoincrement)
userid (int)
subject (varchar)
message (text)
--------------------------------------
Mijn php bestand ziet er zo uit:
eann_news.php
en mijn template bestand ziet er zo uit:
eann_news.tpl
Zoals je wellicht merkt krijg ik nu vlg lijn:
test 1 by 1 (22/06/2006 18:16)
Nu moet die "by 1", feitelijk "by Jan" worden
ma ik versta niet hoe ik dit moet doen binnenin smarty, hopelijk kan iemand hier mij dit uitleggen
ik weet dat ik een sql moet schrijven die die userid moet vervangen door de loginname, maja...hier zit ik vast :-/
Ik hoop dat ik het probleem goed genoeg heb omschreven!
Bedankt alvast
EDIT
ik heb ondertussen al uitgevonden dat ik met
de naam er uit krijg, ma hoe kan ik dit nu verwerken in die andere sql :-/
Ik ben bezig met een nieuwssysteem te schrijven in php, met smarty als template engine
Nu is mijn probleem dat ik niet weet hoe ik de naam van de poster kan weergeven.
Mijn DB structuur ziet er als volgt uit:
Tabel eann_members
userid(prim key, autoincrement)
naam(tekst)
Tabel eann_news
newsid(prim key, autoincrement)
userid (int)
subject (varchar)
message (text)
--------------------------------------
Mijn php bestand ziet er zo uit:
eann_news.php
PHP:
// maak nieuwe smarty aan
$smarty = new Smarty();
//haal alle niewsberichten op
$sql = "SELECT newsid, userid, posttime, subject FROM eann_news";
$result = mysql_query($sql);
while($rij = mysql_fetch_assoc($result))
{
$arrElements[] = $rij;
}
$smarty->assign("newsElements", $arrElements);
$smarty->display('eannNews.tpl');
en mijn template bestand ziet er zo uit:
eann_news.tpl
PHP:
{section name="i" loop=$newsElements}
<table class="table_viewNews" border="0" cellpadding="0" cellspacing="0">
<tr>
<th colspan="1">{$newsElements[i].subject} by {$newsElements[i].userid} ({$newsElements[i].posttime|date_format:"%d/%m/%Y %H:%M"})</th>
</tr>
<tr>
<td><a href="">Read more...</a></td>
</tr>
</table>
<br />
{/section}
Zoals je wellicht merkt krijg ik nu vlg lijn:
test 1 by 1 (22/06/2006 18:16)
Nu moet die "by 1", feitelijk "by Jan" worden

ma ik versta niet hoe ik dit moet doen binnenin smarty, hopelijk kan iemand hier mij dit uitleggen

ik weet dat ik een sql moet schrijven die die userid moet vervangen door de loginname, maja...hier zit ik vast :-/
Ik hoop dat ik het probleem goed genoeg heb omschreven!
Bedankt alvast
EDIT
ik heb ondertussen al uitgevonden dat ik met
PHP:
$sql = "SELECT eann_members.loginname FROM eann_members, eann_news WHERE eann_members.userid = eann_news.userid";
de naam er uit krijg, ma hoe kan ik dit nu verwerken in die andere sql :-/
)