1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Previsualizar, almacenar y mostrar imagen en Php

Tema en 'Programación y Diseño Web' iniciado por santiago2811, 9 Jun 2007.

  1. santiago2811

    santiago2811 Nuevo usuario

    Podrian ayudarme a previsualizar una imagen con PHP , despues que la guarde en MySql y para despues buscarla y que la mueste?
    por favor.....! grazie!
     
  2.  
  3. elQuique

    elQuique Usuario activo

    Yo no guardaria jamas las imagenes en la base de datos, eso complica luego por el peso de la base, y las tareas de respaldo.

    Lo que haria seria deja 1 campo para guardar el nombre del archivo de la imagen, luego muestro esa imagen con html y el nombre

    <img src="fotos/<?php echo $row['imagen']; ?>" />

    :)
     
  4. santiago2811

    santiago2811 Nuevo usuario

    ....tenes algun ejemplo de como se haria eso? :mellow:
     
  5. santiago2811

    santiago2811 Nuevo usuario

    quique ya pude hacer que funcione, pero poniendo la direcion a mano en la base de datos.... como haria para que cargue la imagen en x carpeta y esa dir la pase a la basde datos?
     
  6. elQuique

    elQuique Usuario activo

    Pos el ejemplo es el que puse arriba :) si te refiere a tutorial para subir imágenes a un servidor desde tu disco:

    <b>Publicar Imagenes en Internet</b>
    <a href="http://www.tallerwebmaster.com/Tutorial-Publicar-Imagenes-en-Internet-c-44.html" target="_blank">http://www.tallerwebmaster.com/Tutorial-Pu...ernet-c-44.html</a>



    si te fijas en la linea php:

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <?php
    move_uploaded_file($_FILES['archivo']['tmp_name'], '/home/usuario/public_html/archivosonline/' . $_FILES['archivo']['name']);
    ?>
    <!--c2--></div><!--ec2-->

    como tu ya sabes en que carpeta quedan las imágenes (en este caso en /home/usuario/public_html/archivosonline/) dejaras que el sistema de archivo se encargue de las imagenes que son archivos y es lo mas apropiado para no pasar de peso la base de datos.

    Entonces luego del move agregas simplemente que el nombre del archivo se guarde en la base asi:

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    mysql_query("INSERT INTO tablaimagenes SET archivo = '" . $_FILES['archivo']['name'] . "'");
    <!--c2--></div><!--ec2-->

    ahí solo ocupas unos pocos caracteres :)

    Luego como te dije en el html para mostrar una imagen haces así:

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <img src="archivosonline/tufoto.jpg" />
    <!--c2--></div><!--ec2-->

    que obviamente no sera fija ;) debes sustituir el nombre de la imagen por la que esta en la base, así (hago un while que muestre todas !!):

    <!--c1--><div class='codetop'>CÓDIGO</div><div class='codemain'><!--ec1-->
    <?php
    ...
    $rst = mysql_query("SELECT * FROM tablaimagenes");
    while ($row = mysql_fetch_array($rst)) {
    ?>
    <img src="archivosonline/<?php echo $row['archivo']; ?>" />
    <?php
    }
    ...
    ?>
    <!--c2--></div><!--ec2-->
     
  7. santiago2811

    santiago2811 Nuevo usuario

    siiii! ya esta ya no jodo mas.anda de nuevo! sos un grande.! :drunk:
     
  8. santiago2811

    santiago2811 Nuevo usuario

    Quique otra vez.... :( me anda todo perfecto subo la imagen todo bien pero cundo lo quiero probar en el servidor me dice que permiso denegado y me tira esto:

    <i><b>Warning: move_uploaded_file(/home/descubra/public_html/florida/imagesonline/madcap.jpg) [function.move-uploaded-file]: failed to open stream: Permission denied in /home/descubra/public_html/florida/upload.php on line 18

    Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/php44lPbK' to '/home/descubra/public_html/florida/imagesonline/madcap.jpg' in /home/descubra/public_html/florida/upload.php on line 18
    </b></i>


    Sabes como se soluciona ? tengo que hablar con los del hosting?

    saludos y gracias nuevamente
     
  9. elQuique

    elQuique Usuario activo

    Como dice en el tutorial, a la carpeta destino debes darle permiso 777 mediante el FTP

    <!--quoteo--><div class='quotetop'>CITA</div><div class='quotemain'><!--quotec-->
    Lo segundo necesario es asignar a la carpeta donde deben quedar los archivos el permiso de escritura, si esta se llama "archivosonline" va a estar ubicada por ejemplo así: /home/usuario/public_html/archivosonline

    Para asignarle el permiso debemos ir por nuestro FTP y con botón derecho, propiedades le asignamos el permiso de escritura 777 a la carpeta "archivosonline"
    <!--QuoteEnd--></div><!--QuoteEEnd-->
     
  10. santiago2811

    santiago2811 Nuevo usuario

    ...ta era eso nomas....eso es por leer a las apuradas....
    otra cosa, hay forma de cambiar los nombres de las imagenes que la gente sube? o avisarle si ese nombre de archivo ya existe para no sobreescribirlas?

    chauu
     
  11. Carxl

    Carxl Nuevo usuario

    <!--quoteo(post=226865:date=Jun 11 2007, 09:53 PM:name=santiago2811)--><div class='quotetop'>CITA(santiago2811 @ Jun 11 2007, 09:53 PM) [snapback]226865[/snapback]</div><div class='quotemain'><!--quotec-->
    hay forma de cambiar los nombres de las imagenes que la gente sube? o avisarle si ese nombre de archivo ya existe para no sobreescribirlas?
    <!--QuoteEnd--></div><!--QuoteEEnd-->


    Hola santiago2811.

    Claro que la hay, simplemente lo que tienes que hacer es preguntar si la imagen que quieren subir ya existe. Y se hace con la instrucción: <a href="http://www.htmlpoint.com/php/guida/php_31.htm" target="_blank">file_exists()</a>

    Saludos :adios:
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·