Foros del Web » Programando para Internet » PHP »

guardar url de imagen en Mysql

Estas en el tema de guardar url de imagen en Mysql en el foro de PHP en Foros del Web. Hola que tal compañeros, les cuento una consulta que tengo sobre mysql haber si me pueden ayudar a solventar mi pregunta. Lo que pasa es ...
  #1 (permalink)  
Antiguo 17/06/2010, 16:21
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 7 meses
Puntos: 5
guardar url de imagen en Mysql

Hola que tal compañeros, les cuento una consulta que tengo sobre mysql haber si me pueden ayudar a solventar mi pregunta.

Lo que pasa es que tengo el siguiente script de pato12 para subir imagenes al servidor

Código PHP:
<? 
if($_POST){
// Creamos la cadena aletoria
$str "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
$cad "";
for(
$i=0;$i<12;$i++) {
$cad .= substr($str,rand(0,62),1);
}
// Fin de la creacion de la cadena aletoria
$tamano $_FILES 'file' ][ 'size' ]; // Leemos el tamaño del fichero
$tamaño_max="50000000000"// Tamaño maximo permitido
if( $tamano $tamaño_max){ // Comprovamos el tamaño 
$destino 'uploaded' // Carpeta donde se guardata
$sep=explode('image/',$_FILES["file"]["type"]); // Separamos image/
$tipo=$sep[1]; // Optenemos el tipo de imagen que es
if($tipo == "gif" || $tipo == "pjpeg" || $tipo == "bmp"){ // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen
move_uploaded_file $_FILES 'file' ][ 'tmp_name' ], $destino '/' .$cad.'.'.$tipo);  // Subimos el archivo
include('post.html'); // Incluimos la plantilla
}
else echo 
"el tipo de archivo no es de los permitidos";// Si no es el tipo permitido lo desimos
}
else echo 
"El archivo supera el peso permitido.";// Si supera el tamaño de permitido lo desimos
}
?>
y lo que necesito hacer es guardar la url de la imagen a una base de datos mysql y crear un numero aleatorio por cada url, alguien me podria explicar como hacer esto ya que soy novato con esto del mysql

Saludos y muchas gracias de antemano
  #2 (permalink)  
Antiguo 19/06/2010, 09:14
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 5 meses
Puntos: 9
Respuesta: guardar url de imagen en Mysql

ok, supongamos que la imagen ya se subio al servidor sin ningun problema
entonces procedemos a guardar
Código PHP:
//conectas ala base de datos
$foto $_FILES 'file' ][ 'tmp_name' ];

$conexion mysql_connect($dbhost,$dbusuario,$dbpass) or die("No se pudo conectar a la base de datos<br>".mysql_error());

 
$dbconexion mysql_select_db($dbnombre$conexion);

 
$insertar mysql_query("INSERT INTO foto (url) VALUES ('$foto')") or die("No se insertaron los datos porque ".mysql_error());

// INSERT INTO foto (url) << este url es el campo de la tabla foto donde se va a guardar 
eso seria el sistema de guardar la foto, ahora los del random creo que te referis a los ID's eso de hace cuando creas las tablas fijate
Código PHP:
$tabla "CREATE TABLE fotos (
      id bigint(10) NOT NULL auto_increment, // aunto incremente cuando agregas un dato nuevo ala base
      url text NOT NULL,
      PRIMARY KEY id (id))"
;
      
$q mysql_query($tabla) or die(mysql_error()); 
espero esto te ayude..
  #3 (permalink)  
Antiguo 21/06/2010, 20:21
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 7 meses
Puntos: 5
Respuesta: guardar url de imagen en Mysql

Hola que tal muchas gracias por tu ayuda, hasta ahora he logrado esto

Código PHP:
 //Guardar en BD
$url $destino[$rand_destino].'.web.co.cc/'.$nombre.$tipo;
$key md5(time());
$query "INSERT INTO `archivos` (id,url,key) VALUES (0, ".$url.", ".$key.")";
mysql_query($query) or die(mysql_error()); 
Y me da este error

Código:
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 'key) VALUES (0, s2.web.co.cc/avatar-body3FNUpng, 1c5dc3d8f661b7cb7d73890f' at line 1
Alguien sabe a que se debe y como puedo solucionarlo???

Saludos y muchas gracias de antemano
  #4 (permalink)  
Antiguo 21/06/2010, 20:31
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 1 mes
Puntos: 81
Respuesta: guardar url de imagen en Mysql

key, si no me equivoco, es una palabra reservada de mysql... prueba con esto:
Código PHP:
$url $destino[$rand_destino].'.web.co.cc/'.$nombre.$tipo;
$key md5(time());
$query "INSERT INTO archivos a (a.id,a.url,a.key) VALUES (0, '".$url."', ".$key.")";
mysql_query($query) or die(mysql_error()); 
Tambien le agregue comillas simples (') a url dado que es un campo tipo TEXT.

En el peor de los casos esto tambien sirve:
Código PHP:
$url $destino[$rand_destino].'.web.co.cc/'.$nombre.$tipo;
$key md5(time());
$query "INSERT INTO archivos (archivos.id,archivos.url,archivos.key) VALUES (0, '".$url."', ".$key.")";
mysql_query($query) or die(mysql_error()); 
Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 21/06/2010, 20:46
 
Fecha de Ingreso: agosto-2009
Mensajes: 292
Antigüedad: 14 años, 7 meses
Puntos: 5
si era por la palabra key

Saludos y muchas gracias de antemano

+karma

Hola que tal, ya despues que guarda el numero aleatorio con el md5 correctamente, lo quiero mostrar en post.php que hay es donde nuestra toda la imformacion de la imagen tengo el siguiente codigo para mostrar el numero aleatorio pero no lo muestra

Código PHP:
La imagen fue enviada con exito.

<ul>
  <li>Tipo: <?php echo strtoupper($tipo); ?></li>
  <li>Ubicasion: <?php echo 'http://'.$destino[$rand_destino].'.'.web.'.'.co.'.'.cc.'/'.$nombre.'.'.$tipo ?></li>
</ul><br>

codigo para borrar imagen: 
<?php
$conexion 
mysql_connect('host''user''pass')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('bd')or die ('Error al seleccionar la Base de Datos: '.mysql_error());           

$imgkey_select "SELECT imgkey FROM archivos";  
$imgkey_result mysql_query($imgkey_select$conexion) or die (mysql_error());
?>
alguien que me peuda ayudar???

saludos y muchas gracias de antemano

Última edición por GatorV; 25/06/2010 a las 14:18

Etiquetas: mysql, url
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 00:40.