Gå til innhold

Hjelp til kommentarfunksjon


Anbefalte innlegg

Skrevet

Jeg holder på å lage et CMS-system med kommentarfunksjon. Har noen tips på hvordan jeg skal organisere dette i Mysql i forhold til en kommentarfunksjon på artikler. Kategorier inne i en tabell? På forhånd takk! :)

Videoannonse
Annonse
Skrevet (endret)

articles: [id, title, slug, body, created, updated]

comments: [id, *article_id, author, body, created]

 

SELECT id, author, body, created FROM comments WHERE article_id = 123

Endret av Josh Homme
Skrevet (endret)

Tusen takk! :) Jeg har fått det til. Men de nyeste kommentarene ligger nederst. Hvordan kan man få de nyeste øverst?

Endret av webby1
Skrevet

Takk igjen! Når det gjelder sletting av kun en kommentar i while så blir alt slettet. Noen som vet om noen gode slettemåter av kun en kommentar?

Skrevet

articles: [id, title, slug, body, created, updated]

comments: [id, *article_id, author, body, created]

 

SELECT id, author, body, created FROM comments WHERE article_id = 123

 

 

hva gjør egentig ordet slug i spørringen din?

Skrevet

articles: [id, title, slug, body, created, updated]

comments: [id, *article_id, author, body, created]

 

SELECT id, author, body, created FROM comments WHERE article_id = 123

 

 

hva gjør egentig ordet slug i spørringen din?

Samme som i tabellen får vi tro :o) Du får google deg opp på publiserings-lingo'en ...

Skrevet

articles: [id, title, slug, body, created, updated]

comments: [id, *article_id, author, body, created]

 

SELECT id, author, body, created FROM comments WHERE article_id = 123

 

 

hva gjør egentig ordet slug i spørringen din?

Ment til å lagre søkemotorvennlig versjon av tittelen for bruk i URIer, men egentlig unødvendig i eksempelet her.

Skrevet

WHERE ID=X

 

Jeg har prøvd dette, men får det ikke helt til. Noen som kan vise noen eksempler på hvordan dette skal virke sammen med php og mysql? :)

Skrevet

while ($rad = mysql_fetch_array($resultat)) {


$bruker = $rad['bruker'];
$id = $rad['id'];


echo "$id. $bruker<br>";


echo "<form action='' method='post'>";
echo "<input type='submit' name='slettk'>";
echo "</form>";

}
///Slutt kommentarer

if (isset($_POST['slettk'])) {
$tilkobling = mysql_connect("mysql.hosted.servetheworld.net");
mysql_select_db("toppspi_base", $tilkobling);
$slett = "DELETE FROM kommentarer WHERE id='$id'";
mysql_query($slett, $tilkobling);
}

else {

}

 

Har den mysql-koden, men hos meg sletter man alle kommentarer ved å trykke på en av knappene. Hva må jeg egentlig gjøre for å unngå dette problemet?

Skrevet

Legg til

echo "<input type='hidden' name='id' value='<?php echo $id?>'>";

 

kontroller også hva $id inneholder rett før du bruker DELETE. Det kan du gjøre ved å kommentere ut mysql_query-linjen og legge til denne linjen rett over eller under mysql_query-linjen:

echo $slett;

Skrevet (endret)

Takk:) Så lurte jeg litt på når det gjelder blokking av ip-adresser. Noen tips? Vil prøve å få til å blokkere kommentarer

Endret av webby1
Skrevet (endret)

Takk:) Så lurte jeg litt på når det gjelder blokking av ip-adresser. Noen tips? Vil prøve å få til å blokkere kommentarer

 

if($_SERVER['REMOTE_ADDR'] == "IP") {

// nekt tilgang

} else {

// tilgang

}

 

 

 

Endret av Thomas.
Skrevet (endret)

Tusen takk! :) Noen som har tips om hvordan man kan lage neste/forrigefunksjon i forhold til artikler?

Endret av webby1
Skrevet

Du mener så det vises feks 15 artikler på en side omgangen, også en link til "eldre innlegg" nederst på siden hvor da de forrige 15 artiklene vises?

Ja, det var det som var planen. :)

Skrevet

Det finnes sikkert flere måter å gjøre det på. Jeg bruker LIMIT $start, $avsnitt_per_side i SQL'en. Start har jeg som session-variabel. Så må du huske å øke/minke start'en når de trykker på neste/forrige. Det burde gi deg en start iallefall om ikke annet.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...