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
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


0