PHP - Subir imagen

   
Vista:

Subir imagen

Publicado por Susana (16 intervenciones) el 28/05/2008 09:41:50
Hola ,

se que este post esta repetido pero no solucione el problema no se si tengo algo mal en el codigo,a ver si alguien me puede ayudar,trabajo con php y mysql,tengo un formulario para agregar noticias a la base datos y me inserta bien los datos,tengo un campo llamado imagen pero solo inserto el nombre de la imagen por ejem: soldador02 sin la extension,el problema es que tengo un boton de examinar para insertar dicha imagen y quiero subirla al servidor y no se como hacerlo:(

Muchas gracias por adelantado

tengo este codigo en un mismo fichero llamado form_noticias.php donde tengo el formulario y se llama a si mismo

if(isset($_POST['enviar']))

{

if(!empty($_POST['titulo']) and !empty($_POST['subtitulo']) and !empty($_POST['texto']) and !empty($_POST['img']) and !empty($_POST['categoria']))

{

if(is_uploaded_file($_FILES['img']['tmp_name']))
{ // verifica haya sido cargado el archivo

$ruta= "imagenes/".$_FILES['img']['name'];
// Se guardaría dentro de "imagenes" con el nombre original

if(move_uploaded_file($_FILES['img']['tmp_name'], $ruta))
{ // se coloca en su lugar final

echo "<b>Se subio la imagen con exito!<br>Datos:</b><br>";
echo "Nombre: <i>".$_FILES['img']['name']."</i><br>";
echo "Tipo MIME: <i>".$_FILES['img']['type']."</i><br>";
echo "<br><hr><br>";

}

}

//Usamos la funcion basename para sacar el nombre de la imagen sin la extension
$imagen = basename($_POST['img']);
$imagen = basename($_POST['img'], ".jpg");

// Con esta sentencia SQL insertaremos los datos en la base de datos
mysql_query("INSERT INTO jos_noticiasprincipal (id,imagen,url,texto,visible,titulo,categoria,subtitulo)
VALUES('".$url."','".$imagen."','".$url."','{$_POST['texto']}','1',
'{$_POST['titulo']}','{$_POST['categoria']}','{$_POST['subtitulo']}')");

}

if(!empty($_POST['titular']) and !empty($_POST['imgXL']) and !empty($_POST['textototal']))

{
if(is_uploaded_file($_FILES['imgXL']['tmp_name']))
{ // verifica haya sido cargado el archivo

$rutaXL= "imagenes/".$_FILES['imgXL']['name'];
if(move_uploaded_file($_FILES['imgXL']['tmp_name'], $rutaXL))
{ // se coloca en su lugar final
echo "<b>Se subio la imagen con exito!<br>Datos:</b><br>";
echo "Nombre: <i>".$_FILES['imgXL']['name']."</i><br>";
echo "Tipo MIME: <i>".$_FILES['imgXL']['type']."</i><br>";
echo "<br><hr><br>";

}

}

//Usamos la funcion basename para sacar el nombre de la imagen sin la extension
$imagenXL = basename($_POST['imgXL']);
$imagenXL = basename($_POST['imgXL'], ".jpg");

// Con esta sentencia SQL insertaremos los datos en la base de datos
mysql_query("INSERT INTO jos_noticiasindividuales (id,imagen,titular,textototal,visible,idprincip)
VALUES('".$idprincip."','".$imagenXL."','{$_POST['titular']}','{$_POST['textototal']}','1','".$idprincip."')");

}


if(!empty($_POST['titulo']) and !empty($_POST['subtitulo']) and !empty($_POST['texto']) and !empty($_POST['img']) and !empty($_POST['categoria']) and !empty($_POST['titular']) and !empty($_POST['imgXL']) and !empty($_POST['textototal']))

{

// Ahora comprobaremos que todo ha ido correctamente

$my_error = mysql_error($db);

if(!empty($my_error))

{

echo "Ha habido un error al insertar los valores. $my_error";

} else {

echo "Los datos han sido introducidos satisfactoriamente";
}

} else {

echo "Por favor,rellene todos los campos";

}


}//cerramos if de enviar

Con este codigo me inserta los datos en la base de datos correctamente pero no me sube las imagenes a la ruta que le especifico.

Estoy desesperada:((

Gracias otra vez
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Subir imagen

Publicado por asas (1 intervención) el 01/08/2008 00:08:45
sasasasa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar