Foros del Web » Programando para Internet » PHP »

Guardar Hipervinculo en Mysql con PHP

Estas en el tema de Guardar Hipervinculo en Mysql con PHP en el foro de PHP en Foros del Web. Buenas amigos, mi cordial saludo, pues tios estoy un poco liado con algo, estoy realizando un upload de archivos (imagen, archivos word excel power point, ...
  #1 (permalink)  
Antiguo 25/02/2010, 09:40
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 10 meses
Puntos: 0
Guardar Hipervinculo en Mysql con PHP

Buenas amigos, mi cordial saludo, pues tios estoy un poco liado con algo, estoy realizando un upload de archivos (imagen, archivos word excel power point, videos), y la cuestion es esta, en la base de datos tengo lo siguiente:

La tabla para almacenar estos archivos se llama Multimedia, y esta posee estos campos:
Nombre
Describir
Archivo
Usuario

El nombre es valga la redundancia el nombre que el usuario desee que salga en la cabecera cuando suba el archivo.

Describir pone la descripcion del archivo (breve).

En Archivo que es lo que quiero saber, como almaceno un hipervinculo dentro de la base de datos?, (ahora les pongo el codigo).



y en Usuario simplemente guardo el usuario que este loggeado con el $_SESSION, es facil.


Simplemente es la unica relacion que veo para poder subir las imagenes, el hipervinculo lo genero al subir la imagen a la direccion en mi servidor.

Formulario para subir archivo.
Código PHP:

<?php
    session_start
();
    

?>

 <fieldset>
        <legend>Subir Archivo</legend>
        <p>Seleccione un archivo y pulse 'upload' </p>
        <form name="form1" enctype="multipart/form-data" method="post" action="upload.php" />
            Nombre: <input type="text" name="nombre" maxlength="100"><br>
        <p><input type="file" size="32" name="my_field" value="" /></p>
            <p class="button"><input type="hidden" name="action" value="simple" />
            <input type="submit" name="Submit" value="upload" /></p>
        </form>
    </fieldset>

Upload.php
Código PHP:
 $handle = new Upload($_FILES['my_field']);

    
// then we check if the file has been uploaded properly
    // in its *temporary* location in the server (often, it is /tmp)
    
if ($handle->uploaded) {

        
// yes, the file is on the server
        // now, we start the upload 'process'. That is, to copy the uploaded file
        // from its temporary location to the wanted location
        // It could be something like $handle->Process('/home/www/my_uploads/');
        
$handle->Process('../Multimedia');

        
// we check if everything went OK
        
if ($handle->processed) {
            
// everything was fine !
            
echo '<fieldset>';
            echo 
'  <legend>El Archivo se Subio Correctamente!!!</legend>';
            echo 
'  <p>' round(filesize($handle->file_dst_pathname)/256)/'KB</p>';
            echo 
'  Vea el Archivo: <a href="'.$dir_pics.'/' $handle->file_dst_name '">' $handle->file_dst_name '</a>';
            echo 
'</fieldset>';
            
            
            
mysql_select_db('eductecn_sistema');
            
$sql1"insert into multimedia(nombre, imagen, usuariop) VALUES ('$nombre','<a href="'.$dir_pics.'/' . $handle->file_dst_name . '">' . $handle->file_dst_name . '</a>','$usuario')";
            
mysql_query($sql1); 
El Archivo se sube correctamente a la carpeta que quiero, y en la parte esta:

Código PHP:
echo '  Vea el Archivo: <a href="'.$dir_pics.'/' $handle->file_dst_name '">' $handle->file_dst_name '</a>'
funciona correctamente para que el usuario vea el archivo que ha subido al servidor, ahora lo que quiero es subir ese hipervinculo a la base de datos? a ver que me recomiendan... :D

PD: Antes habia utilizado el Blob en mysql, pero no me resulta muy comodo para trabajarlo, creo que mas facil poniendo el hipervinculo y luego mostrandolo, facil y eficiente :D. Saludos.

PD2: El error que me da al subir ese hipervinculo es este:

Código PHP:

Parse error
syntax errorunexpected T_CONSTANT_ENCAPSED_STRING in /home/eductecn/public_html/Facilitador/upload.php on line 113 

Última edición por luisinho69; 25/02/2010 a las 09:46 Razón: Faltaba info
  #2 (permalink)  
Antiguo 25/02/2010, 09:45
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 9 meses
Puntos: 77
Respuesta: Guardar Hipervinculo en Mysql con PHP

Cita:
Iniciado por luisinho69 Ver Mensaje
PD: Antes habia utilizado el Blob en mysql, pero no me resulta muy comodo para trabajarlo, creo que mas facil poniendo el hipervinculo y luego mostrandolo, facil y eficiente :D. Saludos.
Ajá, y el problema es..?
  #3 (permalink)  
Antiguo 25/02/2010, 09:54
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Guardar Hipervinculo en Mysql con PHP

Gracias por la pronta respuesta, el error que tengo esta en el Insert que estoy haciendo, no se si sea el mas correcto, simplemente quiero guardar el hipervinculo en la base de datos, pero me da un error al guardar, lo puse mas arriba es este:

Código PHP:

Parse error
syntax errorunexpected T_CONSTANT_ENCAPSED_STRING in /home/eductecn/public_html/Facilitador/upload.php on line 113 
La linea 113 es esta:

Código PHP:

mysql_select_db
('eductecn_sistema');
            
$sql1"insert into multimedia(nombre, imagen, usuariop) VALUES ('$nombre','<a href="'.$dir_pics.'/' . $handle->file_dst_name . '">' . $handle->file_dst_name . '</a>','$usuario')";
            
mysql_query($sql1); 
  #4 (permalink)  
Antiguo 25/02/2010, 10:01
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 2 meses
Puntos: 334
Respuesta: Guardar Hipervinculo en Mysql con PHP

Código PHP:
Ver original
  1. href="'.$dir_pics.'/' . $ha

si partes con comillas dobles.. concatena con las mismas
Código PHP:
Ver original
  1. href='".$dir_pics."/' . $ha

saludos

PD: no se nota mucho pero di vuelta las comillas
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 25/02/2010, 10:02
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 10 meses
Puntos: 14
Respuesta: Guardar Hipervinculo en Mysql con PHP

Seguro que es problema de las comillas simples y dobles...podias probar a guardar <a href=" en un variable y su final y insertarlos en la db asi te evitas usar las dobles comillas en el insert...
  #6 (permalink)  
Antiguo 25/02/2010, 10:14
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 9 meses
Puntos: 77
Respuesta: Guardar Hipervinculo en Mysql con PHP

Estas iniciando una cadena con comillas dobles, luego colocas otras comillas dobles dentro de la cadena y terminas con comilla simple.

Escapa las comillas dobles despues de href y cambia la comilla simple qe delimita la primera parte de la cadena por comillas dobles.
  #7 (permalink)  
Antiguo 25/02/2010, 11:31
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 10 meses
Puntos: 0
Venga estoy algo embotado llevo programando mas de 8 horas seguidas jeje, a ver si me ponen el codigo con el intercambio de comillas, si no es mucho pedir. Gracias por sus respuestas.

Venga ahora no me guarda! jejejeje, hay algun tipo de dato en especifico en mysql para almacenar hipervinculos?, yo le he puesto varchar de 10.000 a ver que me recomiendan....................................... ..............????

Última edición por GatorV; 25/02/2010 a las 12:14
  #8 (permalink)  
Antiguo 25/02/2010, 12:21
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 9 meses
Puntos: 77
Respuesta: Guardar Hipervinculo en Mysql con PHP

1) el limite de varchar es 255 >_>
2) usa die() y mysql_error() para ver si tienes algun error en la consulta
  #9 (permalink)  
Antiguo 25/02/2010, 12:30
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Guardar Hipervinculo en Mysql con PHP

Perdon x.x no se porque puse ese 10.000, eso era sobre otra cuestion, en fin he pensado en colocar una variable y darle a esa variable el valor del hipervinculo a ver si asi me funciona mejor..... ahora les paso el codigo

Etiquetas: hipervinculo, 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 13:33.