Toon posts:

[PHP] comments op nieuws

Pagina: 1
Acties:
  • 30 views sinds 30-01-2008

Verwijderd

Topicstarter
Goeiemiddag :),

Wat ik heb: een nieuwsysteem / formulier om nieuws in te voegen / een formulier om een reactie toe te voegen op mijn bericht.

Wat op mijn verlanglijstje staat: Een nieuwsbericht waaronder de reacties op het nieuwsitem staan.

Dus daar ben ik mee bezig, hoe de formulieren er uit zien met de php code lijkt me vrij duidelijk .

code:
1
2
3
4
5
6
7
8
<?php
if(isset($_POST['gaan'])){
    $datum=(date("d-m-Y, H:s")); 
    $query = 'INSERT naam, bericht, datum INTO comments VALUES ('$naam','$bericht','$datum') ';
     mysql_query($query) or die("error ".mysql_error());
    
} else {  // laat formulier zien.
?>


hetzelfde voor het invoegen voor nieuwsberichten.
maar wat nu het 'probleem' is, is dat ik niet weet hoe ik de 2 (nieuwsitem + reacties) kan samen voegen.
Het nieuwsitem heeft een id van 1 dus heeft het id van comments ook 1.

dus als globale uitgetypte code zou je krijgen:
selecteer nieuwsitems en reacties met id = 1
print nieuwsitem
print reacties

maar in php kan ik dit niet echt bedacht krijgen :)..

Ik hoop iemand anders wel ;)

Olivier

  • messi
  • Registratie: Oktober 2001
  • Laatst online: 00:19
koppeltabel ;)

select commentid FROM koppeltabel WHERE nieuwsid = '1' oid :)

en daarna kun je comments uit je comments tabel halen met het id.

op deze manier kun je alle comments selecteren van het betreffende nieuwsbericht.

ik hoop dat je het snapt ;)

[ Voor 64% gewijzigd door messi op 18-04-2005 15:22 ]

Onze excuses voor het ontbreken van de ondertiteling.


  • Arnout
  • Registratie: December 2000
  • Laatst online: 06-05 08:39
koppeltabel is niet nodig.

1 tabel nieuws
1 tabel comments

in de tabel comments een kolom ref_nieuws (refereert naar id in nieuws)

select *
from comments
where ref_nieuws = 1

  • Willem
  • Registratie: Februari 2001
  • Nu online
Dit is /14 werk

* Willem over schutting gooit :Y)

Alhoewel ik gok dat ook hier snel een slotje op zit.

Motor onderhoud bijhouden


  • messi
  • Registratie: Oktober 2001
  • Laatst online: 00:19
Arnout schreef op maandag 18 april 2005 @ 15:23:
koppeltabel is niet nodig.

1 tabel nieuws
1 tabel comments

in de tabel comments een kolom ref_nieuws (refereert naar id in nieuws)

select *
from comments
where ref_nieuws = 1
Op deze manier kan het ook, maar ikzelf vind koppeltabellen fijner werken, 't is maar net wat je het fijnst vind.

Onze excuses voor het ontbreken van de ondertiteling.


  • simon
  • Registratie: Maart 2002
  • Laatst online: 22:18
SELECT b.*, c.*
FROM blaataaps b, canaria c

zo? mooie where bij verzinnen... of een join :P

|>


Verwijderd

Topicstarter
hmm, dat van arnout heb ik ook aan zitten denken maar ik kwam er niet aan uit hoe ik nou dat id aan vraag om in de comments tabel te zetten..

[ Voor 4% gewijzigd door Verwijderd op 18-04-2005 15:27 ]


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 08-05 11:55

mulder

ik spuug op het trottoir

op het moment dat je comment wilt toevoegen aan het nieuws is het (nieuws) id toch al bekend? De actie word toch: 'voeg comment toe aan nieuws met id x'?

oogjes open, snaveltjes dicht


  • Sh0ckTr00per
  • Registratie: Oktober 2003
  • Laatst online: 21:23
Zoals Don Facundo al zei..

Op het moment dat je een nieuwsitem maakt, heeft deze een id. Simpel gezegd, krijg je bijvoorbeeld zo'n url

www.mijnsite.nl/toonnieuws.php?id=1

Het nieuwsitem haal je dan op met:

select tekst from nieuws where id = $_GET['id']

Onderaan je nieuwsitem staat een mooie link 'plaats reactie'. Deze heeft als url:

www.mijnsite.nl/plaatsreactie.php?nieuws_id=1

In het formulier van die pagina plaats je bijvoorbeeld een hidden form variable, nieuws_id met als waarde 1.

<input type="hidden" name="nieuws_id" value="1">

In het post script staat dan simpelweg deze code:

insert into commentaar (nieuws_id, commentaar) values ($_POST['nieuws_id'], $_POST['commentaar'])

In de toonnieuws.php zet je nog een extra select:

select commentaar from commentaar where nieuws_id = $_GET['id']

En die laat je onder het nieuwsbericht zien. Hopelijk is dit een beetje duidelijk.

  • Arnout
  • Registratie: December 2000
  • Laatst online: 06-05 08:39
Verwijderd schreef op maandag 18 april 2005 @ 15:26:
hmm, dat van arnout heb ik ook aan zitten denken maar ik kwam er niet aan uit hoe ik nou dat id aan vraag om in de comments tabel te zetten..
Dat id is inderdaad bekend als je commentaar geeft op nieuws item x. Dit zijn trouwens wel super basics, ik raad je aan om je wat meer te verdiepen in relationele databases.

[ Voor 4% gewijzigd door Arnout op 18-04-2005 15:51 ]


Verwijderd

Topicstarter
Dat id is inderdaad bekend als je commentaar geeft op nieuws item x. Dit zijn trouwens wel super basics, ik raad je aan om je wat meer te verdiepen in relationele databases.
ik zit nog niet zo lang in het vak heh, je moet ergens beginnen :)..

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 06-05 18:51

Creepy

Tactical Espionage Splatterer

Hmmja. Het is inderdaad wel redelijk basic werk. Dat geeft opzich helemaal niet maar het lijkt er wel op dat je erg aan het handje gehouden moet worden. Misschien is het een goed idee om je eerst nog wat beter in de materie te verdiepen :)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.