Uppdatera inte sidan.
Det beror på hur ditt klotterplank är skrivet? Är det en blogg du pratar om eller vad?
14 svar · 747 visningar · startad av Emil W
Hej jag har ett klotterplank varje gång jag uppdaterar sidan så skapas det nya inlägg
hur fixar man detta
:)
Uppdatera inte sidan.
Det beror på hur ditt klotterplank är skrivet? Är det en blogg du pratar om eller vad?
drew jag skickar pm till dej med koden
Posta här istället, så kan fler hjälpa dig, det är ju det som är hela tanken med ett forum :)
<?php
$con = @mysql_connect("*********","********","***********");
if(!$con)
{
die('kunde inte ansluta:' . mysql_error());
}
mysql_select_db("****************", $con);
@$sql ="INSERT INTO ************** (namn,meddelande,ip_adress,id)
VALUES
('$_POST[namn]','$_POST[meddelande]','$_SERVER[REMOTE_ADDR]','$_POST[id]')";
if(!mysql_query($sql,$con))
{
die('Fel:' . mysql_error());
}
$con = @mysql_connect("****************","*************","************************");
if(!$con)
{
die('kunde inte ansluta:' . mysql_error());
}
mysql_select_db("******************", $con);
$resultat = mysql_query("SELECT * FROM ******************** ORDER BY tid DESC LIMIT 50");
while($row = mysql_fetch_array($resultat))
{
echo $row['namn']." ".$row['tid']." Inlägg: ".$row['id']." <a href=\"\">Anmäl inlägget</a>";
echo "<br><br>";
echo $row['meddelande'];
echo "<hr color=\"#FF9900\">";
}
mysql_close($con);
?>
När sidan laddas så kör PHP uppifrån och ner i din kod.
Så när den kommer till din insert så gör den givetvis en insert i databasen även om det inte är något som ska postas från ditt formulär.
Så du är tvungen att kolla om användaren kommer från formuläret, och i så fall lägga in i databasen.
if(isset($_POST['NamnetPåDinFormulärKnapp']))
{
// Kör din insert
}
/red
Kolla även på funktionen mysql_real_escape_string() för att förhindar sql injections.
tack pedda för hjälpen nu är det löst
Vad är sql injections.
man får inte uppdatara sidan efter man postat för det kommer samma inlägg en gång till då
Skadlig kod som kan användas för att hacka inloggningar eller t.o.m tömma hela databaser.
Du sätter skydd mot SQL injection i dina SQL frågor
I dina INSERT exempelvis:
mysql_select_db("****************", $con);
@$sql ="INSERT INTO ************** (namn,meddelande,ip_adress,id)
VALUES
('$_POST[namn]','$_POST[meddelande]','$_SERVER[REMOTE_ADDR]','$_POST[id]')";
på alla dina $_POST:er.
du behöver inte ha @ framför dina variabel namn alls skulle jag gissa på.
ok