Ja tänkte skriva ett litet forum i PHP/MySQL..hur ska jag bygga upp det? spara varje inlägg i en rad?..hur ska ja då veta vilka inlägg som hör samman, typ svar åså?!
------------------
Sebroc
11 svar · 734 visningar · startad av Sebroc
Ja tänkte skriva ett litet forum i PHP/MySQL..hur ska jag bygga upp det? spara varje inlägg i en rad?..hur ska ja då veta vilka inlägg som hör samman, typ svar åså?!
------------------
Sebroc
en tabell:
id
author
reply_id
thedate
message
tex:
om reply_id är 4 så är det ett svar till meddelandet med id 4.
om reply_id är 0 så är det ett "nytt meddelande"
så gjorde jag en gång iaf (ASP dock), och det funkade skitbra
------------------
/bohlin
Inte särskilt bra eftersom det är svårt att skilja på trådar och meddelanden.
Jag föreslår istället en databas för trådar och en för meddelanden.
------------------
/mvh Swey
Programmera PHP
Inte särskilt bra eftersom det är svårt att skilja på trådar och meddelanden.
????? Att bygga som Bohlin visat är i princip det enda fungerande sättet att bygga korrekt trådning. Däremot kan man ju ha en tabell med trådar ändå, för att förenkla vissa sökningar.
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
!!!!! ;)
Använder du wFs modell så har trådar vissa attribut och inlägg vissa attribut. T.ex. så har trådar rubrik-attribut och senaste meddelandet m.m.
------------------
/mvh Swey
Programmera PHP
altså..hm..
om jag sparar så...var ju inte bra..hur ska ja då veta i varje tråd vilket som är svar till vilket åså?..man kan inte bara ssvarar de sista
------------------
Sebroc
Om Du skriver ett nytt inlägg som får ID 5.
Alla svar som sedan kommer på detta inlägg får således reply_id=5..
Med andra ord kan det vara 1, 10, 100, 1000.... svar på ett meddelande och inte bara de sista.
För att sedan ha reda på i vilken ordning de ska stå så har Du datumet (thedate) att sortdera på.
Lätt som en plätt!
------------------
woodi
men..om jag har en tråd, med ID 1 och reply_id 0...sen skriver jag ett svar med ID 6 och reply_id = 1...
hur får jag då fram dem..måste jag loopa ingeom alla inlägg å se om det är ett svar..altså..hur ska jag läsa inläggen..kolla varje tråd om det finns svar, å kolla varje svar om de finns fler svar? blir ju en massa kod...?..
------------------
Sebroc
Kolla in http://hotwired.lycos.com/webmonkey/99/31/index3a.html?tw=programming
Inte bäst i världen, men du förstår säkert principen
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
nått sånt här gjorde jag i ASP.
anropades med <%=disp(0, 0)%>
Sub disp(id,level)
if level = 0 then
Set rs = connection.Execute("SELECT * FROM messages where fldReply = '" & id & " order by fldID DESC")
else
Set rs = connection.Execute("SELECT * FROM messages where fldReply = '" & id & " order by fldID ASC")
end if
do until rs.eof
'hämta nödvändiga variabler från db'n
ID = rs("fldID")
Name = rs("fldName")
Email = rs("fldEmail")
Title = rs("fldTitle")
Time2 = rs("fldTime")
if level > 0 then
str=""
for j=1 to level
str=str & "<img src=""images/blank.gif"" border=0>"
next
end if
if level=0 then str="<img src=""images/p1.gif"">"
if level > 0 then str=str & "<img src=""images/p2.gif"">"
time2=fix_date(Time2)
%>
<%=str%> <a href="javascript: wind('read.asp?id=<%=ID%>')"><%=Title%></a> <%=by%> <%=Name%> <%=time2%><br>
<%
call disp(ID, level+1)
rs.movenext
loop
End Sub
------------------
/bohlin