Una vez más necesito la ayuda de alguien que sepa (no como yo ).
Estoy intentando grabar a través de un formulario campos de texto e imágenes. para ser publicados después en la Web de mi proyecto.
he construido el siguiente código pero me da un error 404
Código PHP:
<?php
if (!isset($_POST['submit'])) {
// form not submitted
?>
<form action="subearchivo.php" method="post" enctype="multipart/form-data">
<fieldset>
<legend>Insertar Noticia</legend>
<label for="titular">Titular:</label><input type="text" name="titular" id="nombre"size="50"/><br/><br/>
<label for="contenido">Contenido:</label><input type="text" name="contenido" id="contenido"size="200"/>
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
<br>
<b>Enviar un nuevo archivo: </b>
<br>
<input name="imagen" type="file">
<br>
<input type="submit" value="Enviar">
</form>
</form>
<?php
}
else {
// Formulario enviado
// ajustamos las variables del servidor
$host = "localhost";
$user = "root";
$pass = "cecilia";
$db = "nmbs";
// recuperamos los datos del formulario y comprobamos que está todo
$titular = empty($_POST['titular']) ? die ("ERROR: Pon un titular") : mysql_escape_string($_POST['titular']);
$contenido = empty($_POST['contenido']) ? die ("ERROR: Pon un contenido") : mysql_escape_string($_POST['contenido']);
//datos del arhivo
$imagen = $_FILES['imagen']['name'];
$tipo_archivo = $_FILES['imagen']['type'];
$tamano_archivo = $_FILES['imagen']['size'];
//compruebo si las características del archivo son las que deseo
if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 100000))) {
echo "La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .jpg<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>";
}else{
if (move_uploaded_file($_FILES['imagen']['tmp_name'], $imagen)){
echo "El archivo ha sido cargado correctamente.";
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
// Abrimos la conexión
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
// selecciono la base de datos
mysql_select_db($db) or die ("Unable to select database!");
// generamos el query
$query = "INSERT INTO noticias (titular, contenido, imagen) VALUES ('$titular', '$contenido','$imagen' )";
//ejecuto el query
$result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());
// mensaje de nuevo registro
echo "Nuevo registro insertado correctamente Nº: ".mysql_insert_id();
// cierro la conexión
mysql_close($connection);
}
?>
</BODY>
</html>
Mucshiiisimas gracias por adelantado,
J.