Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No consigo guardar la ruta de una imagen en BD

Estas en el tema de No consigo guardar la ruta de una imagen en BD en el foro de PHP en Foros del Web. Muy buenas. Necesito una vez más vuestra ayuda. Estoy creando un perfil de usuario el cual una vez creado se puede editar para completar más ...
  #1 (permalink)  
Antiguo 22/04/2013, 03:50
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
No consigo guardar la ruta de una imagen en BD

Muy buenas.
Necesito una vez más vuestra ayuda.
Estoy creando un perfil de usuario el cual una vez creado se puede editar para completar más información.
Una de las cosas que no consigo hacer es que pueda subir una foto a su perfil.
Le paso la id del usuario subir3.php?id=<?=$_SESSION['id_perfil']?> que esta guarada en una cookie.
Este es el formulario que subiria la imagen.
[codigo]
<form enctype="multipart/form-data" action="subir3.php?id=<?=$_SESSION['id_perfil']?>" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
Subir esta imagen:
<input name="imagen" type="file" size="100">
<input type="submit" name='submit' value="Enviar">

</form>
[/codigo]
Me sube la imagen a la carpeta foto.
Y este el php que deberia insertarme en la BD
[codigo]
<?php
include("comp/conexion.php");
?>
<?php

if(isset($submit)){
if (is_uploaded_file($_FILES['imagen']['tmp_name'])) {
//revisar que sea jpg
if ($_FILES['imagen']['type'] == "image/jpeg" || $_FILES['imagen']['type'] == "image/pjpeg"){
//nuevo nombre para la imagen
$nuevoNombre = time().".jpg";
//mover la imagen
move_uploaded_file($_FILES['imagen']['tmp_name'], "foto/$nuevoNombre");
//obtener la inforamción
$data = GetImageSize("foto/$nuevoNombre");

/*Inserto el nombre dentro de la Base de datos*/
/*=======================================*/

include("comp/conexion.php");

mysql_query("INSERT INTO perfil ( image) VALUES ($nuevoNombre) ");
/*===============================================*/
//mensaje de éxito
echo "<img src='foto/$nuevoNombre' $data[3]> <br> image $nuevoNombre subida con éxito";
}else{
echo "Formato no válido para fichero de imagen";
}
} else {
echo "Error al cargar imagen: " . $_FILES['imagen']['name'];
}
}
?>
[/codigo]
Pero que por algun motivo que se me escapa no me crea la ruta en la BD para ver posteriormente la imagen.
Alguien puede decirme que es lo que falla?
__________________
http://www.paxarindesign.es
  #2 (permalink)  
Antiguo 22/04/2013, 04:06
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Creo que tienes que te faltan comillas. Además, tendrás que especificar en que usuario se está subiendo la imagen, ¿no? Prueba con esto:

Código PHP:
Ver original
  1. mysql_query("INSERT INTO perfil ('image') VALUES ('$nuevoNombre') WHERE id_perfil = $_SESSION['id_perfil']");

Si sigue sin ir, pon lo siguiente linea a continuación: echo mysql_error();
Para ver que error te da.

Por cierto, no es buena idea pasar la ID de usuario por el formulario:
subir3.php?id=<?=$_SESSION['id_perfil']?>

Cualquiera podría manipular la url y modificar el perfil de otro usuario. Como está en sesión, puedes usar el id a través de la sesión, sin tener que pasarlo por el formulario.
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #3 (permalink)  
Antiguo 22/04/2013, 04:14
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por angelAparicio Ver Mensaje
Creo que tienes que te faltan comillas. Además, tendrás que especificar en que usuario se está subiendo la imagen, ¿no? Prueba con esto:

Código PHP:
Ver original
  1. mysql_query("INSERT INTO perfil ('image') VALUES ('$nuevoNombre') WHERE id_perfil = $_SESSION['id_perfil']");

Si sigue sin ir, pon lo siguiente linea a continuación: echo mysql_error();
Para ver que error te da.

Por cierto, no es buena idea pasar la ID de usuario por el formulario:
subir3.php?id=<?=$_SESSION['id_perfil']?>

Cualquiera podría manipular la url y modificar el perfil de otro usuario. Como está en sesión, puedes usar el id a través de la sesión, sin tener que pasarlo por el formulario.
Muchas gracias por tú rapida respuesta.
Lo primero no se por que me da error al poner la linea de codigo que me pasaste. Voy a ver si es por las comillas.
En cuanto a lo de pasarla id me recomiendas cambiar subir3.php?id=<?=$_SESSION['id_perfil']?> por subir3.php no?
Y uso la variable de sesion en el insert de la bd.
__________________
http://www.paxarindesign.es
  #4 (permalink)  
Antiguo 22/04/2013, 04:25
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Por alguna extraña razón no me lo sube ni a la carpeta foto.
Este otro php si me lo sube correctamente a la carpeta foto y en principio si queria que fuera este ya que este fue uno que hice yo, mientras que el otro lo sace de google.
Código:
<?php
	include("comp/conexion.php");
?>
<?php
	$imagen=$_FILES["imagen"];
	$nombre=$_FILES["imagen"]["name"];
	$archivo="foto/".$nombre;
	$nombre=$nombre;
	while(file_exists($archivo))
	{
		mt_srand(time());
		$numero = mt_rand(0,1000);
		$aux=explode(".",$nombre); //usamos el punto ya que la cadena de la imagen sera nombre.jpg
		$tamano= sizeof($aux);
		$extension=$aux[$tamano-1]; // coje la extension de la imagen (jpg, png, gif)
		$pos=0;
		$nombre="";
		while($pos<$tamano-1)
		{
			$nombre.=$aux[$pos];
			$pos=$pos+1;
		}
		$nombre=$nombre.$numero.".".$extension;
		$archivo="foto/".$nombre;
	}
		$nombre=$nombre;
	if(move_uploaded_file($imagen["tmp_name"], "foto/".$nombre))
	{
		echo "El archivo se subio correctamente.";
		mysql_query("INSERT INTO perfil ('image') VALUES ('$nuevoNombre') WHERE id_perfil = $_SESSION['id_perfil']");
	}else{
		echo "El archivo no subido debido a un error.";
		}
	
?>
Pero el insert me sale error en la linea mysql_query("INSERT INTO perfil ('image') VALUES ('$nuevoNombre') WHERE id_perfil = $_SESSION['id_perfil']"); y no entiendo el porque!
Tambien deberia de cambiar aqui la variable $nuevoNombre por $archivo si no me equivoco.
Probe a cambiar las comillas simples por dobles y al reves y no encuentro la solución.
Siento ser un poco torpe pero en este mundo del php todabia me pierdo.
__________________
http://www.paxarindesign.es

Última edición por paxarin; 22/04/2013 a las 04:28 Razón: cambio en nombre de la variable.
  #5 (permalink)  
Antiguo 22/04/2013, 04:50
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Cuando falla un SQL lo mejor es ver que está haciendo realmente. Prueba con:

Código PHP:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql = "INSERT INTO perfil ('image') VALUES ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']";
  3. if ( !mysql_query() ){
  4. echo "Error ".mysql_error()." al ejecutar: ".$sql;
  5. }

Normalmente el error suele ser algo muy sencillo, pero sin saber que está haciendo el sql, es complicado de ver. ¿Podrías probar y ver que error te devuelve?

Pd: He cambiado $nuevoNombre por $archivo
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #6 (permalink)  
Antiguo 23/04/2013, 02:45
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por angelAparicio Ver Mensaje
Cuando falla un SQL lo mejor es ver que está haciendo realmente. Prueba con:

Código PHP:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql = "INSERT INTO perfil ('image') VALUES ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']";
  3. if ( !mysql_query() ){
  4. echo "Error ".mysql_error()." al ejecutar: ".$sql;
  5. }

Normalmente el error suele ser algo muy sencillo, pero sin saber que está haciendo el sql, es complicado de ver. ¿Podrías probar y ver que error te devuelve?

Pd: He cambiado $nuevoNombre por $archivo
Como me seguia dando el error en la linea del insert y no sabia el por que cambie esa linea por esta.
Código:
echo "El archivo se subio correctamente.";
		$sql = "INSERT INTO perfil.image VALUES '$archivo' WHERE email = '$_SESSION[email]' ";
		//$sql="INSERT INTO perfil ('image') VALUES ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']";
		if ( !mysql_query() ){
		echo "Error ".mysql_error()." al ejecutar: ".$sql;
		}
y me da los siguientes errores
El archivo se subio correctamente.
Warning: mysql_query() expects at least 1 parameter, 0 given in C:\xampp\htdocs\paxarin\red-social\subir.php on line 39
Error al ejecutar: INSERT INTO perfil.image VALUES 'foto/obama76.jpg' WHERE email = '[email protected]'
__________________
http://www.paxarindesign.es
  #7 (permalink)  
Antiguo 23/04/2013, 02:50
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Disculpa, estoy atontado

Cambia la línea 39 por if ( !mysql_query($sql) ){
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #8 (permalink)  
Antiguo 23/04/2013, 03:10
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por angelAparicio Ver Mensaje
Disculpa, estoy atontado

Cambia la línea 39 por if ( !mysql_query($sql) ){
Buenas.
Lo extraño de todo es que cuando me da el error me aparece la siguiente linea
Error al ejecutar: INSERT INTO perfil 'image' VALUES 'foto/fotopepa988.jpg' WHERE id_perfil = '3'
y yo entiendo que parece que funciona, por que reconoce la ruta del archivo y el id del usuario que sube la imagen, pero no se vuelca a la tabla.
__________________
http://www.paxarindesign.es
  #9 (permalink)  
Antiguo 23/04/2013, 03:12
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''image' VALUES 'foto/obama191.jpg' WHERE id_perfil = '3'' at line 1 al ejecutar: INSERT INTO perfil 'image' VALUES 'foto/obama191.jpg' WHERE id_perfil = '3'
pero las imagenes llegan a la carpeta foto.
__________________
http://www.paxarindesign.es
  #10 (permalink)  
Antiguo 23/04/2013, 06:29
 
Fecha de Ingreso: abril-2013
Mensajes: 34
Antigüedad: 11 años
Puntos: 3
Respuesta: No consigo guardar la ruta de una imagen en BD

estimado intenta realizar la consulta de la siguiente forma
'INSERT INTO perfil ('image') VALUE ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']'

el where queda a tu criterio, pero intenta cambiar el VALUES por VALUE, si aun asi sigue arrojando error, podrias poner la estructura de la tabla perfil
  #11 (permalink)  
Antiguo 24/04/2013, 03:16
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Buenas.
No entiendo el motivo por el cual siempre me da error esa coño liea de php. Cambie
Código:
'INSERT INTO perfil ('image') VALUE ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']'
por esta
Código:
$sql='INSERT INTO perfil image VALUE $archivo WHERE id_perfil =$_SESSION[id_perfil]';
Ahora ya no aparece ningun error de escritura. y teoricamente funciona el php, la imagen sube a la carpeta y para ver si funcionaba use en alert para que me mostrara lo que se almacena en la variable y el resultado a mi entender es correcto.
si hago el alert de $sql muestra esto.
El archivo se subio correctamente.INSERT INTO perfil image VALUE $archivo WHERE id_perfil =$_SESSION[id_perfil]
Y si lo hago de $archivo me aparece la ruta + el nombre del archivo
Pero cuando reviso la bd el campo image de la tabla perfil esta vacio.
Este campo por si hay esta el error es tipo varchar y con una longitud de 60 caracteres.
Alguien sabrria que es lo que sucede?
Por si acaso os dejo todo el php.
Código:
<?php
    session_start();
    include('comp/conexion.php'); 
    // comprobamos que se haya iniciado la sesión
    if(isset($_SESSION['email'])) {
?>
<?php
	$imagen=$_FILES["imagen"];
	$nombre=$_FILES["imagen"]["name"];
	$archivo="foto/".$nombre;
	$nombre=$nombre;
	while(file_exists($archivo))
	{
		mt_srand(time());
		$numero = mt_rand(0,1000);
		$aux=explode(".",$nombre); //usamos el punto ya que la cadena de la imagen sera nombre.jpg
		$tamano= sizeof($aux);
		$extension=$aux[$tamano-1]; 
		$pos=0;
		$nombre="";
		while($pos<$tamano-1)
		{
			$nombre.=$aux[$pos];
			$pos=$pos+1;
		}
		$nombre=$nombre.$numero.".".$extension;
		$archivo="foto/".$nombre;
	}
		$nombre=$nombre;
	if(move_uploaded_file($imagen["tmp_name"], "foto/".$nombre))
	{
		echo "El archivo se subio correctamente.";
		$sql='INSERT INTO perfil image VALUE $archivo WHERE email =$_SESSION[email]';
		echo $sql;
		echo $archivo;
		
	}
	
?>
<?php
    }else {
        header("location:noacceso2.php"); 
    }
?>
__________________
http://www.paxarindesign.es
  #12 (permalink)  
Antiguo 24/04/2013, 07:40
 
Fecha de Ingreso: abril-2013
Mensajes: 34
Antigüedad: 11 años
Puntos: 3
Respuesta: No consigo guardar la ruta de una imagen en BD

estimado
me acabo de dar cuenta de que en ningun lado ejecutas la consulta ¬¬ xD
es por eso que no se esta guardando en la base de datos, simplemente la estas guardando en una variable y luego haces un echo de dicha variable, pero en ningun momento la ejecutas
  #13 (permalink)  
Antiguo 25/04/2013, 04:28
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por lcruzga Ver Mensaje
estimado
me acabo de dar cuenta de que en ningun lado ejecutas la consulta ¬¬ xD
es por eso que no se esta guardando en la base de datos, simplemente la estas guardando en una variable y luego haces un echo de dicha variable, pero en ningun momento la ejecutas
Muy buenas.
La verdad que hay si que me pillas, en esto del php todabia estoy un poco verde.
Como que no ejecuto la consulta? la verdad no lo comprendo.
Hasta lo que entiendo en la variable $archivo se almacena la ruta y el nombre de la imagen con su extensión. $archivo="foto/".$nombre;
Podrias explicarme un poco más? o facilitarme un ejemplo?
Gracias y un saludo.
__________________
http://www.paxarindesign.es
  #14 (permalink)  
Antiguo 26/04/2013, 02:15
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Cambia esto del final:

Código HTML:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql='INSERT INTO perfil image VALUE $archivo WHERE email =$_SESSION[email]';
  3. echo $sql;
  4. echo $archivo;

por esto otro:

Código HTML:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql='INSERT INTO perfil image VALUE $archivo WHERE email =$_SESSION[email]';
  3. mysql_query($sql);
  4. echo $sql;
  5. echo $archivo;
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #15 (permalink)  
Antiguo 26/04/2013, 02:18
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Ok, el error está en MySQL no en el PHP. No puedes hacer un INSERT con un WHERE. Un INSERT es para añadir un dato nuevo, no tiene sentido el WHERE. Tienes que hacer un UPDATE:

UPDATE perfil SET image = '$archivo' WHERE email = '$_SESSION[email]'

Te quedaría así:

Código PHP:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql= "UPDATE perfil SET image = '$archivo' WHERE email = '$_SESSION[email]'";
  3. echo $sql;
  4. echo $archivo;
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #16 (permalink)  
Antiguo 26/04/2013, 03:51
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por angelAparicio Ver Mensaje
Ok, el error está en MySQL no en el PHP. No puedes hacer un INSERT con un WHERE. Un INSERT es para añadir un dato nuevo, no tiene sentido el WHERE. Tienes que hacer un UPDATE:

UPDATE perfil SET image = '$archivo' WHERE email = '$_SESSION[email]'

Te quedaría así:

Código PHP:
Ver original
  1. echo "El archivo se subio correctamente.";
  2. $sql= "UPDATE perfil SET image = '$archivo' WHERE email = '$_SESSION[email]'";
  3. echo $sql;
  4. echo $archivo;
Cambiandolo como me comentas sigue saliendo un error, bueno un NOTICE
Notice: Undefined index: imagen in C:\xampp\htdocs\paxarin\red-social\subir.php on line 8

Notice: Undefined index: imagen in C:\xampp\htdocs\paxarin\red-social\subir.php on line 9
y en la bd no aparece nada en esa fila.
Entiendo lo del update, ya que la fila si existe, pero no guarda nada.
Me esta matando esto.
Sabes o conoces algun php o tuto que me diga como hacerlo?
__________________
http://www.paxarindesign.es
  #17 (permalink)  
Antiguo 26/04/2013, 04:06
Avatar de angelAparicio  
Fecha de Ingreso: julio-2009
Ubicación: Sevilla
Mensajes: 307
Antigüedad: 14 años, 9 meses
Puntos: 22
Respuesta: No consigo guardar la ruta de una imagen en BD

Mmm, ese error en la línea 8 es que el formulario no está enviando el archivo

Mira estos tutoriales, por Internet hay muchos sobre este tema:
http://jagdeepmalhi.blogspot.com.es/...-database.html
http://stackoverflow.com/questions/2...ve-path-to-sql
__________________
Mis webs:
- Programador Web Autónomo
- Conciertos en Sevilla
  #18 (permalink)  
Antiguo 26/04/2013, 04:46
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Cita:
Iniciado por angelAparicio Ver Mensaje
Mmm, ese error en la línea 8 es que el formulario no está enviando el archivo

Mira estos tutoriales, por Internet hay muchos sobre este tema:
http://jagdeepmalhi.blogspot.com.es/...-database.html
http://stackoverflow.com/questions/2...ve-path-to-sql
Muchas gracias por los link.
Probe el primero y por lo menos aunque sea en una linea nueva me inserta el monbre del archivo.
Ahora solo tengo que ver la forma de en lugar de hacer un insert, que sea un update y pasarle ya id.
Que es pero se me de mejor de lo que se a dado hasta ahora.
Un saludo y muchas gracias.
__________________
http://www.paxarindesign.es
  #19 (permalink)  
Antiguo 30/04/2013, 04:23
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Muy buenas.
Antes de nada dar las gracias a angelAparicio por su gran ayuda con este malicioso codigo que ya me traia de cabeza.
Por fin funciono cojiendo un trocito de codigo de cada sitio.
Un saludo
__________________
http://www.paxarindesign.es
  #20 (permalink)  
Antiguo 30/04/2013, 04:26
Avatar de paxarin  
Fecha de Ingreso: enero-2010
Ubicación: Santander
Mensajes: 413
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: No consigo guardar la ruta de una imagen en BD

Dejo el formulario y el php que funciona por si a alguien le pudiera valer.
Formulario
Código:
<form enctype="multipart/form-data" action="subir.php?id=<?=$_SESSION['id_perfil']?>" method="POST">
                <input type="file" required x-moz-errormessage="Debe seleccionar una imagen" name="imagen" id="imagen" class="inputFile" />
				<input type="submit" value="Enviar" />
			 </form>
Php para enviarlo.
Código:
<?php
    session_start();
    include('comp/conexion.php'); // incluímos los datos de acceso a la BD
    // comprobamos que se haya iniciado la sesión
    if(isset($_SESSION['email'])) {
?>
<?php
	$imagen=$_FILES["imagen"];
	$nombre=$_FILES["imagen"]["name"];
	$archivo="foto/".$nombre;
	$nombre=$nombre;
	while(file_exists($archivo))
	{
		mt_srand(time());
		$numero = mt_rand(0,1000);
		$aux=explode(".",$nombre); //usamos el punto ya que la cadena de la imagen sera nombre.jpg
		$tamano= sizeof($aux);
		$extension=$aux[$tamano-1]; // coje la extension de la imagen (jpg, png, gif)
		$pos=0;
		$nombre="";
		while($pos<$tamano-1)
		{
			$nombre.=$aux[$pos];
			$pos=$pos+1;
		}
		$nombre=$nombre.$numero.".".$extension;
		$archivo="foto/".$nombre;
	}
		$nombre=$nombre;
	if(move_uploaded_file($imagen["tmp_name"], "foto/".$nombre))
	{
		//echo "El archivo se subio correctamente.";
		//$sql='INSERT INTO perfil image VALUE $archivo WHERE email =$_SESSION[email]';
		//$sql = "INSERT INTO perfil ('image') VALUEs ('$archivo') WHERE id_perfil = '$_SESSION[id_perfil]' ";
		//$sql="INSERT INTO perfil ('image') VALUES ('$archivo') WHERE id_perfil = $_SESSION['id_perfil']";
		//echo $sql;
		//echo $archivo;
		echo "El archivo se subio correctamente.";
			$sql= "UPDATE perfil SET image = '$archivo' WHERE email = '$_SESSION[email]'";
			mysql_query($sql);
			echo $sql;
			echo $archivo;
			
			
		
	}
	
?>
<?php
    }else {
        header("location:noacceso2.php"); 
    }
?>
Y para mostralo
Código:
<?php
					$perfil = mysql_query("SELECT * FROM perfil WHERE id_perfil='".$_GET['id']."'") or die(mysql_error());
					if(mysql_num_rows($perfil)) { // Comprobamos que exista el registro con la ID ingresada
						$row = mysql_fetch_array($perfil);
						$id = $row["id_perfil"];
						$nick = $row["name"];
						$surname = $row["surname"];
						$email = $row["email"];
						$tipo = $row["tipo"];
						$dia = $row["dia"];
						$mes = $row["mes"];
						$ano = $row["ano"];
						$prov = $row["prov"];
						$ciudad = $row["ciudad"];
						$registro = $row["reg"];
						$src=$row['image'];
						}
            		?>
Y asi muestro la foto
Código:
 <?php
                	echo "<img src=".$src."> <br>";
					?>
__________________
http://www.paxarindesign.es

Etiquetas: bd, formulario, mysql, ruta
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 21:36.