Foros del Web » Programando para Internet » PHP »

subir imagen a MySQL

Estas en el tema de subir imagen a MySQL en el foro de PHP en Foros del Web. Hola amigos... buen dia y buen karma para ti. se que esto será muy básico, pero en serio yo creo que estoy ciclado... no encuentro ...
  #1 (permalink)  
Antiguo 16/11/2012, 17:30
 
Fecha de Ingreso: septiembre-2009
Mensajes: 56
Antigüedad: 14 años, 7 meses
Puntos: 0
subir imagen a MySQL

Hola amigos... buen dia y buen karma para ti.

se que esto será muy básico, pero en serio yo creo que estoy ciclado... no encuentro el error.

Tengo un formulario que debe cargar datos y subirlos a una BBDD. Pongo el formulario a continuación

Código PHP:
<form name="Form1" method="post" action="actualizardatos2.php" id="Form1" onsubmit="return ValidateForm1(this)">

Usuario: 
<input type="text" id="Editbox1" name="usuario" value="<?php echo $usuario?>" tabindex="10" autocomplete="off">

Password:
<input type="text" id="Editbox2"  name="password" value="<?php echo $password?>" maxlength="12" tabindex="20" autocomplete="off">


Logotipo:
<input type="file" id="logo"  name="logo" tabindex="40">

<input type="submit" id="Actualizar" name="Actualizar" value="Actualizar"  tabindex="50">
La pagina que recoge el formulario se llama "actualizardatos2.php" y les pongo el codigo a continuacion

Código PHP:
<?php
$usuario 
$_REQUEST['usuario'];
$password $_REQUEST['password'];

// creamos una conexion
$conexion mysql_connect($host,$userBD,$passBD) or die("Problemas en la conexion"); 

// nos conectamos a la bbdd
mysql_select_db($database,$conexion) or die("Problemas en la seleccion de la base de datos"); 


if(isset(
$_POST['Actualizar']) && $_FILES['logo']['size'] > 0)  // se supone entrar a este IF si el archivo ´logo´ existe... pero el problema es que NO ENTRA.
    
{
    
    
$fileNameLogo $_FILES['logo']['name'];
    
$tmpNameLogo  $_FILES['logo']['tmp_name'];
    
$fileSizeLogo $_FILES['logo']['size'];
    
$fileType $_FILES['logo']['type'];
    
    
$fpLogo fopen($tmpNameLogo'rb');
    
$contentLogo fread($fpLogofilesize($tmpNameLogo));
    
$contentLogo addslashes($contentLogo);
    
fclose($fpLogo);
    
$extLogo substr($fileType, -3);  // extrae los 3 ultimos caracteres del tipo de archivo, por ejemplo png  o  jpg
    
if (substr($fileType, -4) == "jpeg" or substr($fileType, -4) == "JPEG") { $extLogo "jpg"; }
    
$extLogo strtolower($extLogo);
    
// AQUI VA LA LA ACTUALIZACION DEL LOGO A LA BBDD
                        // actualizamos la tabla
                        
$registros=mysql_query("UPDATE $tabla1
                         SET logoAbonado='$contentLogo', extLogoAbonado='$extLogo'
                         WHERE idAbonado='$idAbonado'"
,$conexion
                         or die(
"Problemas en la actualizacion del logo: ".mysql_error());             
    }


    
//AQUI VA LA LA ACTUALIZACION A LA BBDD, SIN EL LOGO
// actualizamos la tabla los tres datos obligatorios
$registros=mysql_query("UPDATE $tabla1
                         SET usuario='$usuario', password='$password', email='$email'
                         WHERE idAbonado='$idAbonado'"
,$conexion
                         or die(
"Problemas en la actualizacion de los datos de texto: ".mysql_error());

mysql_close($conexion);

?>
El problema es que, aunque actualiza perfectamente el los datos de texto en la BBDD (usuario y password) pero NO ACTUALIZA EL ARCHIVO BINARIO (logo).

Ven algun problma en el codigo?????

Buen karma para ustedes y SALUDOS!!!!
  #2 (permalink)  
Antiguo 16/11/2012, 18:16
 
Fecha de Ingreso: junio-2011
Ubicación: Barcelona
Mensajes: 212
Antigüedad: 12 años, 11 meses
Puntos: 17
Respuesta: subir imagen a MySQL

Fijate en

Código PHP:
mysql_select_db($database,$conexion) or die("Problemas en la seleccion de la base de datos"); 
Donde esta la variable $database? Ya que tampoco ahi ninguna llamada alguna conf.
Luego por que usas REQUEST si envías los parámetros en post?. Es innecesario usar request, utiliza $_POST.
__________________
Twitter: @ed33x
  #3 (permalink)  
Antiguo 16/11/2012, 18:22
 
Fecha de Ingreso: septiembre-2009
Mensajes: 56
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: subir imagen a MySQL

Gracias por la respuessta, pero todavia tengo el problema.

la variable $database no es el problema... ahi tengo almacenado el nombre de la base de datos, y viene de un archivo que estoy requiriendo previamente.

Código PHP:
include("../../parametros.php"); 
cambie los REQUEST por $_POST pero el problema está igual....

Actualiza PERFECTAMENTE los datos de texto, pero NO el de imagen.

Que puede estar equivocado???
  #4 (permalink)  
Antiguo 16/11/2012, 21:05
 
Fecha de Ingreso: junio-2011
Ubicación: Barcelona
Mensajes: 212
Antigüedad: 12 años, 11 meses
Puntos: 17
Respuesta: subir imagen a MySQL

Ahora que me fijo en el formulario al subir archivos tienes que usar enctype="multipart/form-data" si mal no recuerdo en el form.

Prueba y comenta.
  #5 (permalink)  
Antiguo 16/11/2012, 21:46
 
Fecha de Ingreso: septiembre-2009
Mensajes: 56
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: subir imagen a MySQL

Cita:
Iniciado por LiveTechno Ver Mensaje
Prueba y comenta.
Sencillamente EXCELENTE.....


Gracias!!!! Valiosisimo aporte!!!!

Etiquetas: formulario, mysql, registro, sql, tabla, usuarios
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 18:12.