---
title: "Kommentarer"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/69774-kommentarer"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "@ndreas"
published: "2003-03-01T17:16:28.000Z"
updated: "2003-03-08T15:20:07.000Z"
replies: 10
views: 711
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/69774-kommentarer"
---

# Kommentarer

## #1 — @ndreas, 2003-03-01T17:16Z

Hej!
Jag hade förut denna funktion för att låta besökarna lämna sina kommentarer i en textfil där jag skiljde av olika data med ; sen tog jag ur datan med explode kan man göra likadant i mysql, alltså det som lagras är namn;epost;kommentar;tid;namn;epost;kommentar;tid
kan jag sen hämta ur detta och dela ut det i en HTML-kod.
Hoppas ni förstår, va svårt att skriva hur. 
I kommentar lagras alltså datan med skiljetecknet ; kan man då ta ur datan och dela upp den ifrån mysql?
Tack!

Permalänk: https://www.webforum.nu/p/69774

## #2 — dectgap, 2003-03-01T17:40Z

Det enklaste hade nog varit om varje person hade haft en egen rad i textfilen. När du läser ifrån textfilen kör du en explode på varje rad, och får då fram att $namn = filen\[radnummer\]\[0\]. Nu är jag dålig på det här med att läsa och skriva till textfiler, men det ska nog gå ganska lätt för dig med stöd från manualen.

Permalänk: https://www.webforum.nu/p/966429

## #3 — Morpheus, 2003-03-03T13:11Z

testa nåt sånt här:

```php
<?php

// ladda filen
$line = file('filen.txt');

// räkna antal rader
$rows = count($line);

// loop
for($i = 0; $i < $rows; $i++)
{
   // skapa en array
   $data = explode(";",$line[$i]);
   
   // sen är det bara att skapa html:en
   $html .= "Namn: " . $data[0] . " | Tid: " . $data[1] . "<br />\n"; // osv
}

echo $html;

?>
```

Permalänk: https://www.webforum.nu/p/966863

## #4 — @ndreas, 2003-03-03T19:59Z

alltså, jag tror ni missuppfattade mig, jag vill hämta ur mysql på liknande sett som man gör med scriptet som du Morpheus (Örebro rules!) skickade.

Permalänk: https://www.webforum.nu/p/967213

## #5 — Morpheus, 2003-03-03T21:05Z

jaha ja... förlåt för att jag mjissuppfattade dig... så du har all info i en kolumn i en tabell, eller hur är det?

Permalänk: https://www.webforum.nu/p/967260

## #6 — psykolog, 2003-03-04T19:51Z

Det verkar vara att inte utnyttja enkelheten i att arbeta med databas.

Jag skulle hellre gjort en tabell som hette "kommentarer" och innehöll kolumnerna 

namn, epost, kommentar, tid, namn, epost, kommentar, tid

och när jag hämtade allt från "kommentarer" med "SELECT \* FROM \`kommentarer\`" och en whilesats så fick jag i varje iteration ut en vektor med all info i.

Permalänk: https://www.webforum.nu/p/967990

## #7 — Morpheus, 2003-03-04T20:21Z

så skulle jag också gjort, men jag försöker få reda på hur @ndreas har gjort... =P

Permalänk: https://www.webforum.nu/p/968010

## #8 — psykolog, 2003-03-05T21:04Z

@ndreas har (om jag inte missuppfattat allt) helt enkelt en textfil med ett nytt inlägg på vid var tredje semikolon rad och de olika delarna i meddelandet separerade med semikolon.

namn1;kommentar1;tid1;namn2;kommentar2;tid2;namn3 osv osv

@ndreas :
kod för att skapa tabell:

CREATE TABLE \`kommentar\` (
\`id\` INT NOT NULL AUTO_INCREMENT,
\`namn\` VARCHAR( 50 ) NOT NULL ,
\`epost\` VARCHAR( 50 ) NOT NULL ,
\`kommentar\` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( \`id\` ) 
) TYPE = MYISAM COMMENT = 'enkel kommentartabell';

visa.php

```php
<?php 

mysql_connect("host","user","pass");
mysq_select_db("mindatabas");

$qGetComments = "SELECT * FROM kommentar";
$rGetComments = mysql_query($qGetComments);

while ($comment = mysql_fetch_array($rGetComments))
{
   echo $comment['namn'] .' - '. $comment['epost'] .' - '. $comment['kommentar'].'<br>';
}

?>
```

 

spara.php

```php
 Du förväntas ha skickat med ett formulär som innehöll fälten "namn", "epost" och "kommentar"

<?php

$qInsert = "
  INSERT INTO kommentar VALUES (NULL, '".$_POST['namn']."', '".$_POST['epost']."', '".$_POST['kommentar']."')
";

mysql_query($qInsert);
?>
```

När du har fått den koden att fungera så har du lärt dig buggletning, stavelsrättning och hur man INTE kodar mot Databaser, MEN det visar i stort sett vad du skall göra

Permalänk: https://www.webforum.nu/p/968881

## #9 — @ndreas, 2003-03-07T13:36Z

Kan man ta ut de första 5 kommentarerna med denna kod!

Koden verkar sjysst, ska leka med den när jag kommer hem.
Men kan man ta ut de 5 första kommentarerna med den här koden, skulle vara skitbra att ha så. 
Tack på förhand!
Du är en underbar psykolog...psykolog!

Permalänk: https://www.webforum.nu/p/969883

## #10 — psykolog, 2003-03-08T01:20Z

SELECT \* FROM kommentar LIMIT 0,5 ORDER BY id DESC

Jag tror det där fungerar, kan vara någon annan ordning på de sista grejerna. Testa dig fram vetja :)

Permalänk: https://www.webforum.nu/p/973360

## #11 — @ndreas, 2003-03-08T15:20Z

Det  var faktiskt inte något av detta jag ville ha, jag ville kunna lägga in namn, epost och kommentarer i en och samma row och sedan hänta ur dem, har löst det på mitt egna lilla säregna sett, men vem bryr sig, det funkar ju \*jublar\*

Permalänk: https://www.webforum.nu/p/973541

---

Tråden på webben: https://www.webforum.nu/amne/php/69774-kommentarer
