Foros del Web » Programando para Internet » PHP »

Galeria de Fotografías

Estas en el tema de Galeria de Fotografías en el foro de PHP en Foros del Web. Hola a todos, he estado leyendo los post y aqui son buenísimos para la programación, yo he conseguido muchos scripts pero ninguno como lo que ...
  #1 (permalink)  
Antiguo 29/11/2005, 12:17
 
Fecha de Ingreso: junio-2005
Mensajes: 13
Antigüedad: 18 años, 10 meses
Puntos: 0
Galeria de Fotografías

Hola a todos, he estado leyendo los post y aqui son buenísimos para la programación, yo he conseguido muchos scripts pero ninguno como lo que necesito espero que alguien me pueda ayudar.

Tengo una web www.onda-x.net donde principalmente publico fotografías de eventos, y me gustaría poder acomodar las galerias de la siguiente manera:

Tengo 3 columnas, en la del centro poder poner la portada del evento pero que me muestre solo 10 portadas y pueda paginarmelas de 10 en 10 y así cada que agrego una se pase a la siguiente pagina.

Visitando algunos sitios me encontré con este donde me gustan las galerías, hable con el webmaster pero es muy celoso de su trabajo y no me quiso ayudar.

En sus galerias muestra las fotografías en miniatura y al hacer click te abre el popup con la foto en tamaño real, además de que tiene un formulario que al completarlo te envía la foto seleccionada por mail como archivo adjunto, a mi me gustaría poder hacer lo mismo pero en vez de adjuntarla que se pudiera mostrar como postal.

Este es el sitio: http://www.zonavictoria.com/?do=Rink

Ojala alguien me pueda ayudar porque estoy cambiando el diseño y quiero empezar a cambiar mis galerias.

Muchas gracias
  #2 (permalink)  
Antiguo 29/11/2005, 13:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si buscas en el foro por el término "thumbnail" veras muchos ejemplos de la base o técnica para generar esas imagenes en miniatura. Puedes empezar por las FAQ's del foro, pues ahí tienes ejemplos.

Un saludo,
  #3 (permalink)  
Antiguo 29/11/2005, 14:12
 
Fecha de Ingreso: junio-2005
Mensajes: 13
Antigüedad: 18 años, 10 meses
Puntos: 0
mi problema no es con los thumbnails, eso lo puedo hacer, lo que quisiera es que me pudiera paginar y encontre un script llamado "tonacards" que sirve para el envio de postales, bueno adjuntar la imagen que tienes seleccionando un botón debajo de la foto y completando los datos del formulario, es bueno pero la verdad no tengo idea de como configurarlo.

Este es el script:

Código:
<?
/******************************************
* TonaCards v1.0 ©2004 Tonachadas.com
* Envía una imagen como archivo adjunto de un e-mail. Ideal para envío de postales
* electronicas.
* Script sujeto a licencia LGPL, puedes usarlo y editarlo como quieras. Para más información
* visualiza el archivo ayuda.htm
* Autor: Antonio Ignacio Fontenla
* Fecha: 19 Abril 2004
* */

##Cosillas configurables##
$titulo = "Envío de Postales Tonacheras";

//E-mail destinatario de las fotillos
//$miemilio = "[email protected]";

//Prioridad con la que enviaremos los emilios 1=Urgente,10=Despacio,3=Predeterminado
$prioridad = "3";

//Valor para el botón de enviar
$valor_submit = "Enviar Postal";

//valor para el botón Resetear
$valor_reset = "Borrar Todo";

//El "Asunto" del e-mail
$asunto = "Te ha llegado una postal Tonachera";

//Mensaje ke se muestra después de enviar el emilio
$gracias= "Gracias, tu postal ya se ha enviado!!!";

//Ancho de Tabla
$twidth = "420";

//Borde 1=si 0=no
$tborde = "0";

//Color del borde
$tbordecolor = "#000000";

//Color de fondo de la tabla del cuerpo
$tbodycolor = "#ffffff";

//Mensaje que llega junto con la imagen
$mensaje = "Hola ".$nombre_amigo."!!!
Tu amig@ ".$tunombre." te envía este mensajillo y esta imagen
".$mensaje."




-------------------------------
http://www.tonachadas.com";

##------------FIN DE LOS PARÁMETROS CONFIGURABLES----------------##
## No modifiques nada a partir de aqui a no ser que sepas lo que ##
## estás haciendo.												 ##
##---------------------------------------------------------------##

function get_ext($key) {
	$key = strtolower($key);
	$key = explode("/",$key);
	$key1 = $key[1];
	$key = substr(strrchr($key1, "."), 1);
    return($key);
}
function get_name($key){ //sin la extensión
	$key = strtolower($key);
	$key = explode("/",$key);
	$key1 = $key[1];
	$key = explode(".",$key1);
	$key = $key[0];
	return($key);
}
function valida_mail($mail)
	{
	    return eregi('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'. '@'. '[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.' . '[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$', $mail);

	}

/************
* Tipos de archivo aceptados. Guarda el formato del array, añade extensiones
* sin el punto. Ten cuidadin que ciertos tipos de archivo pueden ser
* malignos para tu ordenador o tu servidor
* */
$tipos_aceptados = array("jpg", "jpeg", "png", "gif");

if ($_POST['enviar']){

	if ($tunombre == "" || $tunombre == "Tu Nombre" || $tuemail == "" || $tuemail == "Tu E-mail" || $nombre_amigo == "" || $nombre_amigo == "Nombre Amig@" || $email_amigo == "" || $email_amigo == "E-mail Amig@"){
		echo "<b><font color=\"RED\">ERROR: </font></b>Debes rellenar todos los campos correctamente";
		exit();
	}
	if (!valida_mail($tuemail) || !valida_mail($email_amigo)){
      echo "<font style=\"color:red; text-align:center\">Algunas de las direcciones de correo no cumple el " .
        "estándar RFC822. Mal rollo.</font><br>";
	echo "<input type=\"button\" name=\"Submit\" value=\"Tira p'atrás\" onclick=\"javascript:history.go(-1)\">";
	exit;
	}

foreach($tipos_aceptados as $eso) {
					$tipos .="*.".$eso.",";
}
$ext = get_ext($adjunto);
$nombre = get_name($adjunto);
$nom_completo = $nombre.".".$ext;

	if(!in_array($ext, $tipos_aceptados)) {
		echo "<b><font color=\"RED\">ERROR: </font></b>Extensión inválida para tu adjunto, sólo $tipos son admitidos!<br />";
		exit();
	}

		$headers  = "From: $tunombre <$tuemail>\n";
		$headers .= "Reply-To: $tunombre <$tuemail>\n";
		$headers .= "MIME-Version: 1.0\n";
		$headers .= "Content-Type: multipart/mixed; boundary=\"MIME_BOUNDRY\"\n";
		$headers .= "X-Sender: TonaCards1.0 <$tuemail>\n";
		$headers .= "X-Mailer: TonaCards1.0\n";
		$headers .= "X-Priority: $prioridad\n";
		$headers .= "Return-Path: <$email_amigo>\n";
		$headers .= "This is a multi-part message in MIME format.\n";

		$fp = fopen($adjunto,"r");
		$str = fread($fp, filesize($adjunto));
		$str = chunk_split(base64_encode($str));
		$fp = fclose($fp);


		$message = "--MIME_BOUNDRY\n";
		$message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
		$message .= "Content-Transfer-Encoding: quoted-printable\n";
		$message .= "\n";
		$message .= "$mensaje";
		$message .= "\n";

		$message .= "--MIME_BOUNDRY\n";
		$message .= "Content-Type: application/octet-stream; name=\"$nom_completo\"\n";
		$message .= "Content-disposition: attachment\n";
		$message .= "Content-Transfer-Encoding: base64\n";
		$message .= "\n";
		$message .= "$str\n";
		$message .= "\n";
		$message .= "--MIME_BOUNDRY--\n";

		if(!mail($email_amigo,$asunto,$message,$headers)) {
			exit("Ha ocurrido un error, por favor inténtalo más tarde");
		}

		Echo("<div align=\"center\">$gracias</div>");
		exit();
}
?>
<html>
<head>
<title><?=$titulo?> - Powered by TonaCards v1.0</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function a1(paco,que) {
  if (paco.value==que) {
    paco.value='';
  }
}
function a2(paco,que) {
  if (paco.value=='') {
    paco.value=que;
  }
}
</script>
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="tonacards.php" enctype="multipart/form-data">
  <div align="center">ENV&Iacute;A LA IMAGEN COMO POSTAL TONACHERA<br>
    Rellena todos los campos correctamente<br>
    <br>
  </div>
  <div align="center">
    <table style="border-collapse: collapse" width="<?=$twidth?>" border="<?=$tborde?>" bordercolor="<?=$tbordecolor?>" cellpadding="1" cellspacing="0" bgcolor="<?=$tbodycolor?>">
      <tr>
        <td width="205" valign="top" rowspan="5">
          <textarea name="mensaje" cols="35" rows="7" onfocus="a1(this,'Tu mensajete');" onblur="a2(this,'Tu mensajete');">Tu mensajete</textarea>
        </td>
        <td width="211" height="28" valign="top">
          <input type="text" name="tunombre" size="40" value="Tu Nombre" onfocus="a1(this,'Tu Nombre');" onblur="a2(this,'Tu Nombre');">
        </td>
      </tr>
      <tr>
        <td valign="top" height="28">
          <input type="text" name="tuemail" size="40" value="Tu E-mail" onfocus="a1(this,'Tu E-mail');" onblur="a2(this,'Tu E-mail');">
        </td>
      </tr>
      <tr>
        <td height="28" valign="top">
          <input type="text" name="nombre_amigo" size="40" value="Nombre Amig@" onfocus="a1(this,'Nombre Amig@');" onblur="a2(this,'Nombre Amig@');">
        </td>
      </tr>
      <tr>
        <td height="28" valign="top">
          <input type="text" name="email_amigo" size="40" value="E-mail Amig@" onfocus="a1(this,'E-mail Amig@');" onblur="a2(this,'E-mail Amig@');">
        </td>
      </tr>
      <tr>
        <td height="20" valign="top">
          <input type="hidden" name="adjunto" value="<?=$img?>">
        </td>
      </tr>
      <tr align="center" valign="middle">
        <td height="24" colspan="2">
          <input type="submit" name="enviar" value="<?=$valor_submit?>">
          <input type="reset" name="Submit2" value="<?=$valor_reset?>">
        </td>
      </tr>
      <tr>
        <td height="35" colspan="2" valign="top">&nbsp;</td>
      </tr>
      <tr>
        <td height="24" colspan="2" valign="middle" align="center"> <font face="Verdana, Arial, Helvetica, sans-serif" size="1">Powered
          by TonaCards v1.0<br>
          <a href="http://www.tonachadas.com">www.Tonachadas.com</a></font></td>
      </tr>
    </table>
  </div>
</form>
</body>
</html>
Lo que quiero saber es como puedo o que debo poner de variable para que la imagen que estan viendo la envie como galeria
  #4 (permalink)  
Antiguo 29/11/2005, 14:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero . .tu como muestras tus imagenes actualmente? .. de donde las obtienes .. o donde están?. Las tienes en una Base de datos (el nombre relacionado o el archivo completo en binario) .. las tienes en un directorio y de ahí las lees? .. como lo haces actualmente.

Un saludo,

PD: vamos por partes .. primero el tema de paginar. Luego el tema de enviar por e-mail.
  #5 (permalink)  
Antiguo 29/11/2005, 15:01
 
Fecha de Ingreso: junio-2005
Mensajes: 13
Antigüedad: 18 años, 10 meses
Puntos: 0
Gracias por contestarme

Ulitizo un programa llamado Album Creator de la compañía firmtools, no las tengo en base de datos, el programa me crea una pagina llamada base0.html, base1.html, etc y otra image0.html, image1.html, ademas de un directorio llamado thumbs que es donde guarda las imágenes.

Estoy dispuesto a cambiar la forma de mis galerías para aplicar el formulario como en la página que publiqué anteriormente.
  #6 (permalink)  
Antiguo 29/11/2005, 18:25
 
Fecha de Ingreso: junio-2005
Mensajes: 13
Antigüedad: 18 años, 10 meses
Puntos: 0
He creado una base de datos que se escructura de esta manera

Código:
CREATE TABLE galerias (
  id int(10) NOT NULL auto_increment,
  nombre text,
  fecha varchar(30) default NULL,
  portada varchar(50) default NULL,
  galeria varchar(50) default NULL,
  fotografo varchar(20) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;
y acabo de insertar los siguientes datos

INSERT INTO `galerias` VALUES ('224', 'Fiestas Ocotlán 2006','2005-10-20','http://www.onda-x.net/fotos/galerias/224.gif','http://www.onda-x.net/fotos/224','Motorratón');
INSERT INTO `galerias` VALUES ('223', 'Entrada de Gremios en Ocotlan', '2005-10-20','http://www.onda-x.net/fotos/galerias/223.gif','http://www.onda-x.net/fotos/223','Motorratón');
INSERT INTO `galerias` VALUES ('222', 'Torneo de Fut-bol', '2005-10-18','http://www.onda-x.net/fotos/galerias/222.gif','http://www.onda-x.net/fotos/222','Samir Medina');


Hasta ahí todo va bien


Ahora trato de obtener los datos de esta manera

Código PHP:
<?php


// Connect to database and display results

mysql_connect ("localhost""usuario""pass");
mysql_select_db ("nombre_db");

$result mysql_query("SELECT * FROM galerias WHERE id= $id ORDER BY fecha");

if (
$row mysql_fetch_array($result)) {
do{

  
$id $row[id];
  
$nombre $row[nombre];

echo 
"

<TR ALIGN=\"left\" VALIGN=\"top\">
<TD WIDTH=\"10%\"><B>$id:</B></TD>
<TD><DIV ALIGN=\"left\">$nombre</DIV></TD>
<TD><DIV ALIGN=\"left\">$portada</DIV></TD>

"
;
  if(
$picshow== "1")
  {
  echo 
"<TD><DIV ALIGN=\"left\"><IMG SRC=\"portada\"></TD></TR>";
  }
  else
  {
  echo 
"</TR>";
  }
}
while(
$row mysql_fetch_array($result));
}
?>
pero al ejecutarlo tengo este error

Fatal error: Call to undefined function: mysql_array() in /home/ondanxd/public_html/fotos/consulta.php on line 9


Espero que me puedan ayudar porque me estoy volviendo loco jajaja

Última edición por SamX; 29/11/2005 a las 18:38
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 11:07.