At redigere en tabel i mysql
Hvorfor kan det være, at ligemeget hvor jeg leder efter nogen der har fået et script til at opdatere en tabel i mysql, så får de det aldrig til at virke? :S Så nu spørger jeg selv, eftersom jeg fandt frem til nogle få ting, men det virker stadig ikke.Her er mine filer:
Rettenyhed.php:
<html>
<head>
<title>Ret en nyhed</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<?php
include ('config.php');
if( isset( $_GET['id'] ) )
$id = $_GET['id'];
else
$id = null;
if( $id !== null ) {
// Hent først data ud
$resultat = mysql_query("select * FROM nyhedsys WHERE id = '$id'");
// Kør så igennem for hver række
$raekke = mysql_fetch_array($resultat);
if( $raekke == null )
die("Fandt ikke rækken");
extract($raekke);
?>
<form ACTION="retnyhed.php" method="get">
<input type="hidden" value="<? echo $id ?>" name="id">
<p><h2><b>.: Ret en nyhed :.</b></h2><b><br>
Overskrift:<br> <input type="text" value="<? echo"$headline" ?>" name="headline"><br>
<br>
Navn:<br> <input type="text" value="<? echo"$name" ?>" name="name"><br>
<br>
Email:<br>
<input type="text" value="<? echo"$email" ?>" name="email"><br>
<br>
Nyhed:<br> <textarea name="news" rows="10" cols="35"><? echo"$news" ?></textarea></b></p>
<br>
<input type=submit value=Updater name="submit" >
</form>
<?php
}
else {
$sql = "SELECT id, headline FROM nyhedsys ORDER BY headline";
$res = mysql_query($sql) or die(mysql_error());
// Lav liste
while($row = mysql_fetch_array($res)) {
print '<a href="' . $_SERVER['PHP_SELF'] . '?id=' . $row[0] . '">'.
stripslashes($row[1]). '</a><br />';
}
}
?>
</body>
</html>
-------------
Retnyhed.php:
<?
include "config.php";
$id = $_GET['id'];
mysql_query("UPDATE nyhedsys SET headline='$headline',name='$name',email='$email',news='$news',date=now() WHERE id='$id'") or die(mysql_error());
header("Location: nyheder.php");
?>
-------
Nyheder.php:
<?
include "config.php";
$result = mysql_query("SELECT * FROM nyhedsys ORDER BY id DESC LIMIT 5") or die(mysql_error());
while ($row = mysql_fetch_array($result)) {
echo "
<a href='rettenyhed.php?id=".$row['id']."'><b>".$row['headline']."</b></a><br>
<i>".$row['date']." - ".$row['name']."</i><br>
".$row['news']."<br><hr width='200' align='left'><br>
";
}
?>
-------------------
Config.php indeholder bare scriptet til at connecte til databasen.
Mit problem er følgende:
Når jeg trykker på en nyhed jeg har oprettet i phpmyadmin og retter lidt i den er trykker Update, så går den, som planlagt, tilbage til nyheder.php, men i stedet for at opdatere tabellen, så sletter den alt undtagen datoen, så alle felterne er tomme :S hvorfor pokker gør den det ?
