Avatar billede jalmer Nybegynder
26. juni 2003 - 19:40 Der er 6 kommentarer og
1 løsning

Link til at læse resten af nyheden

Jeg har indtil videre følgende kode:

<?php
$conn = mysql_connect("server", "user", "pass");
mysql_select_db("database");
$sql = "select * from TGV_stories ORDER BY pn_sid DESC";
$query = mysql_query($sql);
while ($row = mysql_fetch_array($query)) {
echo"
<table class='tekstafsnit' width='100%' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td background='images/cellpic3.gif'><b>$row[pn_title]</b> - <font color='#999999'>$row[pn_time]</font></td>
</tr>
<tr>
<td width='100%' height='1' background='images/mainbg.gif'>$row[pn_hometext]<br>
<hr></td>
</tr>
</table>
";
}
mysql_close($conn);
?>


Det den viser på forsiden er feltet pn_hometext, men det er kun den førstedel af nyheden. Den anden del af nyheden står i pn_bodytext. Hvordan laver jeg et link til resten af nyheden, uden at hele siden ændrer, altså sådan så man stadig har resten af tingene der var på siden i forvejen.
Link: www.thegameviewer.dk/TGV3.0
Avatar billede mgb Nybegynder
26. juni 2003 - 23:02 #1
Jeg vil foreslå at du enten redesigner siden (hvis du vil have resten af teksten på samme side. Hvis dette ikke er til fældet kan du enten lave et pop up vindue med resten af artiklen i eller give den en side for sig selv.
Avatar billede jalmer Nybegynder
26. juni 2003 - 23:46 #2
jamen hvis jeg giver den en side for sig selv, fx, artikel.php, hvordan skal den så se ud, og hvordan skal linket være til den?
Avatar billede mgb Nybegynder
27. juni 2003 - 10:00 #3
Du kan se på de fleste blogs på internettet. På index side har de en list at entries/nyheder og ved hver nyhed har de et link så du kan linke direkte til nyheden:
http://rudiment.dk/
http://rudiment.dk/blog/entry345.html
Du bliver nødt til at lave en side der så igen henter resten af nyheden frem.
fks.
http://www.thegameviewer.dk/TGV3.0/single/index.php?nyheds_id=id
Det betyder også at du ikke behøver at hente alt frem fra DB'en (ie SELECT pn_title, pn_time, pn_hometext, pn_id FROM TGV_stories ORDER BY pn_sid DESC)

Du skal derfor putte et AUTO_INCREMENT id I din SQL table
(http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#CREATE_TABLE)

Det ville helt klart være det simpleste løsning og pæneste, synes jeg.
Avatar billede jalmer Nybegynder
27. juni 2003 - 11:45 #4
Ja okay jeg ved at man skal lave en ny side osv. Og min tabel er på auto increment. Men hvordan skal linket se ud på forsiden? <a href="hvad?">$row[pn_title]</a>

Og hvordan skal den side der viser resten af nyheden se ud? Er det ikke noget med phpself?
Avatar billede jalmer Nybegynder
27. juni 2003 - 12:50 #5
Okay jeg fandt ud af at linket skal se sådan her ud:
<a href='artikel.php?nyheds id=$row[pn_sid]'><b>$row[pn_title]</b></a>

Men jeg ved stadig ikke hvad jeg skal skrive i artikel.php, for du siger jo slipper for at skrive SELECT pn_title, pn_time, pn_hometext, pn_id FROM TGV_stories ORDER BY pn_sid DESC, men hvad skal jeg så skrive?
Avatar billede jalmer Nybegynder
27. juni 2003 - 20:53 #6
Nu ser artikel.php sådan her ud:
<?php
$conn = mysql_connect("server", "user", "pass");
mysql_select_db("database");
$sql = mysql_query("select * from TGV_stories ORDER BY pn_sid DESC");
echo "<table class='tekstafsnit' width='100%' border='0' cellspacing='0' cellpadding='0'>";

while ($row = mysql_fetch_array($sql)) {
extract($row);
    if (isset($pn_bodytext)) {
    echo"
    <tr>
    <td width='100%' height='1' background='images/mainbg.gif'>
    Hometext:<br> $pn_hometext<br><br>
    Bodytext:<br> $pn_bodytext<br>
        <hr>
    </td>
    </tr>
    ";
    }
    else {
    echo "
    <tr>
    <td width='100%' height='1' background='images/mainbg.gif'>
    Hometext:<br> $pn_sid[pn_hometext]<br><hr>
    </td>
    </tr>";
    }
}
mysql_close($conn);
echo "</table>";
?>


Nu viser den alle nyhederne fuldt ud, men det skal være sådan så den kun viser den nyhed man har klikket på på forsiden. Altså hvis man har klikket på en artikel på forsiden med id'en 20 skal der i adressevinduet stå "http://www.thegameviewer.dk/artikel.php?id=20" og artikel.php skal så KUN vise den nyhed. Hvordan gør man det?
Avatar billede jalmer Nybegynder
28. juni 2003 - 17:19 #7
Lukker, fandt selv ud af det...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester