Autor
|
Tema: AYUDA!!! no se que hacer!!! (Leído 2,009 veces)
|
eduardosdt
Desconectado
Mensajes: 8
|
Necesito ayuda para poder crear una pagina donde los usuarios puedan poner sus datos y fotos, haber si me explico entro a una web donde puedo poner la foto de mi perro y alguna descripción de el. Los formularios de texto me salen ala perfección puedo cargar y mostrarlos pero ala hora de agregarles un campo de imagen se me complica, no se como hacerlo y busque tutoriales y ejemplos pero no los entiendo por que son para gente que tiene un nivel de conocimientos muy avanzado en php y msql (o almeno eso es lo que me parece, o tal vez no soy muy inteligente) Buscando por google en contre gente que dice a las imágenes no hay que guardarlos en la base de datos ya que esta queda muy pesada y lenta entonces busque ejemplos para que me las suba a mi servidor y encontré esto http://www.phpcondreamweaver.com.ar/2007/04/17/galeria-de-imagenes-dinamica-parte-i-php-mysql-gdque me funciono ya que este tutorial redimensiona las imágenes para que no sean muy pesada, pero no se como hacer para que me guarde la dirección de la imagen que subo a mi servidor en mi base de datos. Me podrían ayudar?
|
|
|
En línea
|
|
|
|
дٳŦ٭
GNU/Linux Infrastructure Specialist
Ex-Staff
Desconectado
Mensajes: 5.110
|
Efectivamente, guardar las imagenes en la db puede resultar poco eficiente..
El valor del campo file solo va a ser el adjunto, pero en ese adjunto viene el nombre (si ya leíste sobre el tema) que te servirá para ponerlo en la db. Puedes hacer un arreglo concatenado así:
$ruta="images/fotos/"; $imagen=elnombredeladjunto;
Y en el query solo las concatenas (pegas) para que forme una: $ruta.$imagen
Para hacer esto no necesitas ser un user avanzado, solo es cuestión de comprender el manejo de adjunto y un poco de sql.
Suerte
|
|
|
En línea
|
|
|
|
eduardosdt
Desconectado
Mensajes: 8
|
Trate y trate pero no pude te paso el código, si me podes orientar te lo agradecería !!! <?php require_once('../../Connections/leg.php'); ?> <!doctype html public "-//w3c//dtd html 4.01 transitional//en"> <html> <head> <title>Galería Dinámica - PHP con Dreamweaver</title> <?php
//Ruta donde guardamos las imágenes $ruta_miniaturas = "imagenes/mini"; $ruta_original = "imagenes";
//El ancho de la miniatura $ancho_miniatura = 150;
//Extensiones que permitimos $extensiones = array(".gif",".jpg",".png",".jpeg",".bmp");
//Necesitamos permisos de escritura if (!is_writeable($ruta_miniaturas)){ die ("Error: El directorio <b>($ruta_miniaturas)</b> no permite escritura"); } if (!is_writeable($ruta_original)){ die ("Error: El directorio <b>($ruta_original)</b> no permite escritura"); }
//Si se envio el form... if (isset($_POST['imagen'])){
$file_type = $_FILES['imgfile']['type']; $file_name = $_FILES['imgfile']['name']; $file_size = $_FILES['imgfile']['size']; $file_tmp = $_FILES['imgfile']['tmp_name'];
//Chequeamos que se haya seleccionado un archivo if(!is_uploaded_file($file_tmp)){ echo "Error: Por favor elegir una imagen para subir!. <br><a href=\"$_SERVER[PHP_SELF]\">Volver</a>"; exit(); //Cortamos el código despues del error } //Chequeamos la extension $ext = strrchr($file_name,'.'); $ext = strtolower($ext); if (!in_array($ext,$extensiones)) { echo "Extension no permitida. <br><a href=\"$_SERVER[PHP_SELF]\">Volver</a>"; exit(); } //Tomamos la extension $getExt = explode ('.', $file_name); $file_ext = $getExt[count($getExt)-1];
$ThumbWidth = $ancho_miniatura;
//buscamos la funcion segun la imagen if($file_size){ if($file_type == "image/pjpeg" || $file_type == "image/jpeg"){ $nueva_imagen = imagecreatefromjpeg($file_tmp); }elseif($file_type == "image/x-png" || $file_type == "image/png"){ $nueva_imagen = imagecreatefrompng($file_tmp); }elseif($file_type == "image/gif"){ $nueva_imagen = imagecreatefromgif($file_tmp); } //Chequeamos el ancho y el alto para mantener la relacion de aspecto list($width, $height) = getimagesize($file_tmp); $imgratio=$width/$height; if ($imgratio>1){ $nuevo_ancho = $ThumbWidth; $nuevo_alto = $ThumbWidth/$imgratio; }else{ $nuevo_alto = $ThumbWidth; $nuevo_ancho = $ThumbWidth*$imgratio; } //Genramos un número al azar de 5 cífras $rand = rand(0,99999); //funcion para redimensionar if (function_exists(imagecreatetruecolor)){ $redimensionada = imagecreatetruecolor($nuevo_ancho,$nuevo_alto); }else{ die("Error: Es necesario tener galería GD2 para que funcione"); } imagecopyresized($redimensionada, $nueva_imagen, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $width, $height); $nombre_nuevaimg = $rand.".".$file_ext; //guardamos la imagen ImageJpeg ($redimensionada,"$ruta_miniaturas/$nombre_nuevaimg", 100); ImageDestroy ($redimensionada); ImageDestroy ($nueva_imagen); //Mostramos echo "<br>Miniatura: <img src=\"$ruta_miniaturas/$nombre_nuevaimg\"/>"; }
//Subimos la imagen original move_uploaded_file ($file_tmp, "$ruta_original/$nombre_nuevaimg"); if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } }
$_SERVER[PHP_SELF] = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $$_SERVER[PHP_SELF] .= "?" . htmlentities($_SERVER['QUERY_STRING']); }
if ((isset($_POST["imagen"])) && ($_POST["imagen"] == "form1")) { $insertSQL = sprintf("INSERT INTO fotos (fotog, fotoc) VALUES (%s, %s)", GetSQLValueString($_POST['$ruta_original'], "text"), GetSQLValueString($_POST['$ruta_miniaturas'], "text"));
mysql_select_db($database_legata_blog, $legata_blog); $Result1 = mysql_query($insertSQL, $legata_blog) or die(mysql_error()); }
//Mostramos echo "<br>Original: <img src=\"$ruta_original/$nombre_nuevaimg\"/>";
echo "<br><br><a href=\"$_SERVER[PHP_SELF]\">Volver</a>";
}else{ //si no se envio la imágen por el form... ?> <h3>Elegi una imagen</h3> <form method="post" name="imagen" enctype="multipart/form-data" action="<?php $_SERVER[PHP_SELF];?>"> <input type="file" name="imgfile"><br> <br><input type="Submit" name="imagen" value="Enviar"> <input type="hidden" name="MM_insert" value="imagen"> </form> <? }?> </body> </html>
|
|
|
En línea
|
|
|
|
Ertai
|
Tengo varias razones para cerrar el post:
1- El titulo no es válido. Por favor, pon algo referente a tu duda. Hay mucha gente que pide ayuda y que tampoco sabe que hacer.
2- Lo que mas me molesta. Este código no es tuyo y quieres que te lo modifiquemos para que te funcione a ti, cierto? Mira, espero que nadie pierda el tiempo respondiendote porque es evidente que te da igual el modo, solo quieres la solución.
Te has mirado el código almenos? Sabes PHP? Porque en vez de un trozo de código que ni de broma lo voy a revisar, pones un par de lineas donde sale el error? O si sabes que la falta algo en la SQL, porque no lo intentas y luego nos preguntas si no te sale?
Si tuviera que escribir un post con los problemas que me dan mis códigos, no te acabas de leer las 3000 i pico lineas de codigo. Pero para algo es mio: para corregir mi código y preguntar si tengo dudas.
No te lo cierro, porque no eres el único.
|
|
|
En línea
|
Si la felicidad se comprara, entonces el dinero sería noble. void rotar_by_ref(int& a, int& b) { /* Quien dijo que no se podia sin una variable temporal? */ *a = *a ^ *b; *b = *a ^ *b; *a = *a ^ *b; }
|
|
|
|
|