Hej!
Så här ser min databas ut:
CREATE TABLE `inlagg` (
`id` INT NOT NULL AUTO_INCREMENT ,
`datum` VARCHAR( 11 ) NOT NULL ,
`tid` VARCHAR( 6 ) NOT NULL ,
`namn` VARCHAR( 15 ) NOT NULL ,
`mail` VARCHAR( 25 ) NOT NULL ,
`meddelandet` VARCHAR( 200 ) NOT NULL ,
UNIQUE (
`id`
)
);
Så här ser formuläret ut:
<form name="form1" method="get" action="gastbok.php">
<p>
<input type="text" name="namn">
</p>
<p> </p>
<p>
<input type="text" name="mail">
</p>
<p> </p>
<p>
<textarea name="meddelandet" cols="30" rows="8"></textarea>
</p>
<p>
<input name="Submit" type="submit" class="style19" value="Skicka">
</p>
</form>
Och så här ser php-koden ut:
<?php
$namn = $_GET['namn'];
$mail = $_GET['mail'];
$meddelandet = $_GET['meddelandet'];
$monad = array('Januari', 'Februari', 'Mars', 'April', 'Maj', 'Juni', 'Juli', 'Augusti', 'September', 'Oktober', 'November', 'December');
$nummer = date("n");
$nummer1 = $nummer-1;
$datum = date(m)." ".$monad[$nummer1]." ".date(Y);
$tid = date("H:i");
$open = mysql_connect("localhost", "", "") or die("Kopplingen funkar inte!");
mysql_select_db("gastbok") or die("Kunde inte välja databasen");
if(isset($_GET['Submit'])) {
$sql = ("INSERT inlagg (datum, tid, namn, mail, meddelandet) VALUES ('$datum', '$tid', '$namn', '$mail', '$meddelandet')");
$resultat = mysql_query($sql) or die(mysql_error());
header("Location: gastbok.php");
}
$resultat = mysql_query($sql) or die(mysql_error());
$sql1 = ("SELECT * FROM inlagg");
$resultat1 = mysql_query($sql1) or die(mysql_error());
while ($res = mysql_fetch_object($resultat1)) {
echo ("<table><tr><td><b style='color:red'>".$res->namn."</b></td><td><b style='color:red'>".$res->datum." ".$res->tid."</b><br></td></tr><tr><td colspan='2'>".$res->meddelandet."</td></tr></table>");
}
?>
Problemet är att den postar även när man refreshar!
Jag skulle förut göra en "röstningssystem" men fick lägga ner allt pga detta problem! Hur fixar jag så att den ENDAST postar när man trycker på submit!
(Jag har även provat byta ut GET mot POST).
Tack på förhand :)