---
title: "Skriva kommentar en gång var 30 sekund"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/100791-skriva-kommentar-en-gång-var-30-sekund"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Melea"
published: "2004-04-02T08:08:40.000Z"
updated: "2004-04-02T11:47:48.000Z"
replies: 5
views: 225
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/100791-skriva-kommentar-en-gång-var-30-sekund"
---

# Skriva kommentar en gång var 30 sekund

## #1 — Melea, 2004-04-02T08:08Z

Hejsan!

Byggde ett kommentarsystem till nyheterna igår och nu vill förhindra spam. Dvs. Besökarna ska enbart kunna skriva en kommentar var 30:de sekund.

Har gjort såhär än sålänge, men det vill inte riktigt funka... den hoppar över **If mysql num rows** satsen...

```
$datum = date("Y-m-d H:i:s", date("U") - 30);

$SQL = ... SELECT FROM * comments where refid = $_POST[refid] AND ip = '$ip' AND written < '$datum' ...

if(mysql_num_rows($SQL) <> 0) {
    Header("Location: ../default.php?i=info&type=news&comments=true&id=$_POST[refid]");
}
```

Tack på förhand

Mvh

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

## #2 — Matte, 2004-04-02T08:28Z

Ska dina punkter föreställa att du kör mysql_query ?

```php
$SQL = mysql_query("SELECT FROM * comments where refid = $_POST[refid] AND ip = '$ip' AND written < '$datum'");
```

 

Testa if-satsen så här istället:

```php
if(mysql_num_rows($SQL) != 0) {
```

 
Det normala teckenkombinationen i PHP för "skilt från" är !=.
Är inte helt 100 på att \<\> fungerar i PHP.

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

## #3 — Melea, 2004-04-02T11:03Z

Ja precis... jag satt i skolan när jag skrev frågan och hade lite brådis så jag fick köra en snabb lösning :)

Prövade din lösning med **!=** men det vill fortfarande inte funka. Jag kan skriva hur många kommentarer jag vill fortfarande.

Såhär ser hela altet ut just nu:

```
$ip = getenv("REMOTE_ADDR");
$datum = date("Y-m-d H:i:s", time("U") - 30);
	
$SQL = mysql_query("SELECT * FROM comments where ip = '$ip' AND written < '$datum' AND refid = $_POST[refid]") or die (mysql_error());
	
if(mysql_num_rows($SQL) != 0) {
	Header("Location: ../default.php?i=info&type=news&comments=true&id=$_POST[refid]");
}
```

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

## #4 — Matte, 2004-04-02T11:29Z

Ska din SQL-fråga plocka fram poster som är skrivna senaste halvminuten; borde det då inte vara written **\>** '$datum' ?

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

## #5 — Matte, 2004-04-02T11:31Z

Ska din SQL-fråga plocka fram poster som är skrivna senaste halvminuten; borde det då inte vara 
written **\>** '$datum' 
?

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

## #6 — Melea, 2004-04-02T11:47Z

Hm.. jo, kanske det. Aldrig förstått logiken i \< och \> tecknena.

Hur som helst, funkar fortfarande inte :(

/red

Nu fick jag igång det... Jag löste det med

```
} else {
...
}
```

PHP är allt skumt :OO

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

---

Tråden på webben: https://www.webforum.nu/amne/php/100791-skriva-kommentar-en-gång-var-30-sekund
