Foros del Web » Programando para Internet » PHP »

como puedo Actualizar imagen con php y mysql en mismo archivo

Estas en el tema de como puedo Actualizar imagen con php y mysql en mismo archivo en el foro de PHP en Foros del Web. Hola a todos Necesito por favor me ayuden a poder modificar la imagen que esta en mi base de datos mysql por otra imagen. les ...
  #1 (permalink)  
Antiguo 03/04/2014, 21:20
 
Fecha de Ingreso: abril-2014
Mensajes: 3
Antigüedad: 10 años
Puntos: 0
Información como puedo Actualizar imagen con php y mysql en mismo archivo

Hola a todos Necesito por favor me ayuden a poder modificar la imagen que esta en mi base de datos mysql por otra imagen. les paso el código, todo funciona bien excepto a la hora de querer cambiar la imagen por otra. aquí va el código.
---------------------------------------------------------------------------------
<html>

<head>
<title>Actualiza registros</title>
<link rel="stylesheet" type="text/css" href="css/proyecto2.css">
<!--
Script para el textarea.
-->
<script src="js/nicEdit-latest.js"

type="text/javascript"> </script>

<script type="text/javascript">bkLib.onDomLoaded(function() { new

nicEditor().panelInstance('comentario'); });

</script>
<script languaje="javascript">

function Ok()

{

nicEditors.findEditor('comentario').saveContent();

document.formname.submit();

}

</script>
<!--

</head>


<body bgcolor=#ffffff>
<?php
/** conexion ***************************/
// conectamos a la base de datos
$link = mysql_connect('localhost', 'usuario', 'password');
if(!$link) {
die("Error al intentar conectar: ".mysql_error());
}
// seleccionamos la base de datos
$db_link = mysql_select_db('agenda', $link);
if(!$db_link) {
die("Error al intentar seleccionar la base de datos". mysql_error());
}
/** fin conexion ************************/
// recogemos el ID
// del registro a actualizar
if(isset($_GET['id'])){
$id = $_GET['id'];
// hacemos una consulta
// para mostrar los datos
$sql = mysql_query("SELECT * FROM articulos
WHERE id = $id", $link)
or die(mysql_error());
$row = mysql_fetch_array($sql);
// advertimos
$mensaje = "Modificar los datos de la propiedad con el Codigo Nº <b>$row[id]</b>";
}
// comprobamos si
// ha sido enviado el formulario
if(isset($_POST['actualizar']) && $_POST['actualizar'] == 'Actualizar'){
// comprobamos que no lleguen campos vacios
if(!empty($_POST['id']) && !empty($_POST['titulo']) && !empty($_POST['fecha']) && !empty($_POST['minicomentario']) && !empty($_POST['foto']) && !empty($_POST['comentario'])){
// creamos las variables
// que vamos a usar en la consulta UPDATE
// y le asignamos sus valores
$id = $_POST['id'];
$titulo = $_POST['titulo'];
$fecha = $_POST['fecha'];
$minicomentario = $_POST['minicomentario'];
$foto = $_POST['foto'];
$comentario = $_POST['comentario'];
// la consulta UPDATE
$sqlUpdate = mysql_query("UPDATE articulos
SET id = '$id',
titulo = '$titulo',
fecha = '$fecha',
minicomentario = '$minicomentario',
foto = '$foto',
comentario = '$comentario'
WHERE id = '$id'", $link)
or die(mysql_error());
echo "Registro actualizado correctamente";
}else{
echo "debe llenar todos los campos";
}
}else{
// mostramos el mensaje
echo "<p>".$mensaje."</p>";
?>

<!--
el formulario.
los values de los campos
son los valores que optenemos
de la consulta SELECT
-->
<form enctype="multipart/form-data" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<input type="hidden" name="id" value="<?php echo $row['id']; ?>" />
<br>
<br>
<b>Titulo:</b> <input style="WIDTH: 220px; COLOR: #e28e34; FONT-WEIGHT: regular" type="text" name="titulo" value="<?php echo $row['titulo']; ?>"/><br><br>
<br><br>
<b>Fecha:</b> <input style="WIDTH: 220px; COLOR: #e28e34; FONT-WEIGHT: regular" type="text" name="fecha" value="<?php echo $row['fecha']; ?>"/><br><br>
<br><br>
<b>Descripción Rapida:</b> <input style="WIDTH: 500px; COLOR: #000000; FONT-WEIGHT: regular" type="text" name="minicomentario" value="<?php echo $row['minicomentario']; ?>"/><br><br>
<br><br>
<!-- Inicia el codigo que muestra la imagen1 -->
<b>Foto:</b>

<br><br>

<br><br>
<input name="foto" value="<?php echo $row['foto']; ?>">
<br><br>
<input name="id" value="<?php echo $row['id']; ?>">
<br>
<br>
<label>¿Quieres cambiar esta imagen?</label>
<br>
<br>
<?php echo
'<img src="foto/'.$row["foto"].'">';
?>
<br>
<br>
<input type="file" name="<?php echo $row['foto']; ?>">

<!-- finaliza el codigo que muestra la imagen1 -->

<br><br>
<b>Direccion:</b> <br><br>
<textarea style="WIDTH: 700px; BACKGROUND-COLOR: #FFFFFF" id="comentario" name="comentario" rows="10" cols="50"><?php echo $row['comentario']; ?></textarea><br><br>
<input type="submit" name="actualizar" value="Actualizar" />
</form>
</body>
</html>
<?php } ?>


--------------------------------------------

Como puede ver el problema es la parte del codigo en el formulario donde selecciono otra imagen para cambiar pero al hacerlo no ocurre nada, en cambio los otros datos si los muestr y los modifica. Agradezco me puedan ayudar me urge.
  #2 (permalink)  
Antiguo 04/04/2014, 00:01
 
Fecha de Ingreso: octubre-2012
Mensajes: 135
Antigüedad: 11 años, 6 meses
Puntos: 8
Los archivos que se pasan por post no se cargan a una variable con _Post. Busca upload imagen php para ver el funcionamiento. Te recomiendo no subir la foto a la base de datos, creo que ni se puede. Lo mejor es guardar la imagen en una carpeta genérica y en la base de datos pones la ruta.
  #3 (permalink)  
Antiguo 04/04/2014, 06:27
 
Fecha de Ingreso: abril-2012
Mensajes: 45
Antigüedad: 12 años
Puntos: 1
Respuesta: como puedo Actualizar imagen con php y mysql en mismo archivo

Hola,

como dice botxii busca un upload en php de una imágen. La imágen la puedes guardar en base de datos de dos maneras, una: almacenando la ruta que corresponde al path de la carpeta donde se encuentra la imágen en el servidor y la otra: guardando la imágen en base de datos, para ello el tipo de dato ha de ser blob.


Un saludo.
  #4 (permalink)  
Antiguo 04/04/2014, 16:34
 
Fecha de Ingreso: abril-2014
Mensajes: 3
Antigüedad: 10 años
Puntos: 0
Respuesta: como puedo Actualizar imagen con php y mysql en mismo archivo

Gracias.

Mi imagen se guarda en un campo blob de la base de datos. logro mostrarla pero no la puedo cambiar por otra exactamente en esta parte del codigo:

<input type="file" name="<?php echo $row['foto']; ?>">

Se supone que este imput subiria la nueva imagen....pero no lo hace .

Gracias si pueden pasarme algún código de ejemplo igual voy a buscar como dice botxii.
  #5 (permalink)  
Antiguo 04/04/2014, 21:09
 
Fecha de Ingreso: junio-2012
Mensajes: 30
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: como puedo Actualizar imagen con php y mysql en mismo archivo

Hola Brams00, te comento que a mi paso lo mismo que a ti y me explicaron que los campos blob no se pueden actualizar, es que mejor que trate que la imagen se almacene en una carpeta. Saludos.
  #6 (permalink)  
Antiguo 08/04/2014, 14:38
 
Fecha de Ingreso: abril-2014
Mensajes: 3
Antigüedad: 10 años
Puntos: 0
Respuesta: como puedo Actualizar imagen con php y mysql en mismo archivo

Gracias Cdisenia

Pero sigo creyendo que debe haber una solucion, es que ya tengo toda una aplicaión montada con php y necesito lograr hacerlo actualizando la imagen de un campo blob.

El codigo que puse arriba actualiza todos los datos menos la imagen del campo blob, he estado buscando en google aver que me sale. les agradecere si me pueden ayudar.

Etiquetas: form, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:21.