Siempre he estado usando un codigo para crearme mis gestores de contenidos. Me desde el primer dia que tiene un 'fallo' y lo he ido subsanando a mano... Pero cansado de darle vueltas me gustaria tener su opinion.
El siguiente código, me introduce en una base de datos de noticias: titulo, sinopsis, contenido, si es destacada, su fecha y una imagen.
Código PHP:
<?
if(isset($_POST['new']))
{
$titulo = $_POST['titulo'];
$sinopsis = $_POST['sinopsis'];
$contenido = $_POST['contenido'];
$destacada = $_POST['destacada'];
$fecha = $_POST['fecha'];
$qstart = "INSERT INTO noticias(titulo, sinopsis, contenido, destacada, fecha";
$qend = "values('".$titulo."','".$sinopsis."', '".$contenido."', '".$destacada."', '".$fecha."'";
if (isset($_FILES['archivo']['name']) ) {
$nimagen = $_FILES['archivo']['name'];
$newfile = $_SERVER['DOCUMENT_ROOT'].$dirgaleria."".$nimagen;
if (move_uploaded_file($_FILES['archivo']['tmp_name'], $newfile) ) {
chmod($newfile, 0777);
echo "Imagen añadida con exito!<br>";
} else {
echo "";
}
$qstart .= ", file";
$qend .= ", '".$nimagen."'";
}
$query = $qstart.") ".$qend.")";
mysql_query($query);
if (mysql_errno()) { echo "MySQL error ".mysql_errno().": ".mysql_error()."<br>"; exit; }
}
?>
<?
if(isset($_POST['edit']))
{
$titulo = $_POST['titulo'];
$sinopsis = $_POST['sinopsis'];
$contenido = $_POST['contenido'];
$destacada = $_POST['destacada'];
$fecha = $_POST['fecha'];
$query = "update noticias set titulo='".$titulo."', sinopsis='".$sinopsis."', contenido='".$contenido."', destacada='".$destacada."', fecha='".$fecha."'";
if (isset($_FILES['archivo']['name'])) {
$nimagen = $_FILES['archivo']['name'];
$newfile = $_SERVER['DOCUMENT_ROOT'].$dirgaleria."".$nimagen;
if (move_uploaded_file($_FILES['archivo']['tmp_name'], $newfile)) {
chmod($newfile, 0777);
echo "Imagen añadida con exito!<br>";
} else {
echo "<br>";
}
$query .= ", file='".$nimagen."'";
}
mysql_query($query. 'where id='.$edit);
if (mysql_errno()) { echo "MySQL error ".mysql_errno().": ".mysql_error()."<br>"; exit; }
}
?> Mi form para editar las noticias es:
Código:
Saben que codigo puedo agregar a la fila: <h1>Notícies: editar</h1>
<form action="not.php" method="post" enctype="multipart/form-data">
<p>
Título:<br />
<input type="text" name="titulo" class="texto" value="<?echo $fila["titulo"];?>" />
</p>
<p>
Sinopsis:<br />
<textarea name="sinopsis"><?echo $fila["sinopsis"];?></textarea>
</p>
<p>
Descripción:<br />
<textarea name="contenido"><?echo $fila["contenido"];?></textarea>
</p>
<p>
Fecha (AAAA/MM/DD):<br />
<input type="text" name="fecha" class="texto" value="<?echo $fila["fecha"];?>" />
</p>
<p>
Imagen:<br />
<input type="File" name="archivo" />
</p>
<p>
En portada:<br />
<select name="destacada" class="texto">
<OPTION VALUE="SI" <?if($fila["destacada"]=="SI") echo "selected";?>>SI
<OPTION VALUE="NO" <?if($fila["destacada"]=="NO") echo "selected";?>>NO
</select>
</p>
<p align="right">
<input type="Hidden" name="edit" value="<?echo $edit;?>" />
<input type="image" src="<?echo $CFG->imagedir?>/submit.gif" />
</p>
</form>
<input type="File" name="archivo" />
Para que si no introduzco nada al editar, me mantenga la foto que tenia??
Gracias!!

