Jag kan inte uppdatera min databas, och anar att jag missar något i min kod ....
if(mysql_real_escape_string($_GET['do']) == "update") {
$titel = mysql_real_escape_string($_POST['titel']);
$nyhet = mysql_real_escape_string($_POST['nyhet']);
$id = $_GET['id'];
$laggTill = "UPDATE nyhet WHERE ID = $id SET titel='$titel', nyhet='$nyhet'";
mysql_query($laggTill) or die("Det gick inte att lägga till information!");
// När allt är sparat, skicka vidare till nyheter
header('Location: nyhet.php');
}
Om jag struntar i update, och testar att skriva ut $titel, $nyhet, $id så skriver den ut allt rätt .... va gör jag fel?
Och jag hade faktiskt missat det, korkat nog ..
Tur att ni underbara människor är vakna :)
Slutgiltiga blev följande
if(mysql_real_escape_string($_GET['do']) == "update") {
$titel = mysql_real_escape_string($_POST['titel']);
$nyhet = mysql_real_escape_string($_POST['nyhet']);
$id = mysql_real_escape_string($_GET['id']);
// $laggTill = "UPDATE nyhet WHERE ID = $id SET titel='$titel', nyhet='$nyhet'";
$laggTill = "UPDATE nyhet SET titel='$titel', nyhet='$nyhet' WHERE ID = $id";
mysql_query($laggTill) or die("Det gick inte att lägga till information!");
// När allt är sparat, skicka vidare till nyheter
header('Location: nyhet.php');
}
Fortfarande helt onödigt att använda mysql_real_escape_string() på din $_GET['do'], bättre om du läser på lite om det och gör rätt från början, så blir koden bättre optimerad och snyggare.
Bättre och mycket snyggare om du kör en funktion, t.ex. den här:
function safesql($value){
$value = trim($value);
if(get_magic_quotes_gpc()){
$value = stripslashes($value);
}
// check if this function exists
if(function_exists("mysql_real_escape_string")){
$value = mysql_real_escape_string($value);
}else{
// for PHP version < 4.3.0 use addslashes
$value = addslashes($value);
}
return $value;
}
Så är det bara att köra det här där du samlar in GET/POST-data:
$id = safesql($_POST['id']);
Blir dessutom himla lätt att ändra om det skulle behövas, eftersom en ändring i funktionen får effekt på alla dina sidor.