Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Creación de un mod

Estas en el tema de Creación de un mod en el foro de Sistemas de gestión de contenidos en Foros del Web. Hola a todos. A ver si alguien sabe como hacer esto ( ya aviso que tiene tela, lo llevo preguntando en infinitos foros y nadie ...
  #1 (permalink)  
Antiguo 25/11/2003, 05:39
Avatar de touza  
Fecha de Ingreso: febrero-2003
Ubicación: barcelona
Mensajes: 65
Antigüedad: 21 años, 3 meses
Puntos: 0
Creación de un mod

Hola a todos. A ver si alguien sabe como hacer esto ( ya aviso que tiene tela, lo llevo preguntando en infinitos foros y nadie sabe ):

Yo tengo un foro hecho con phpbb 2.06, el attachment mod y el album_mod de smartor, últimas versiones, más el ezportal instalado también. La cosa es que me interesaría que al acceder a portal.php, que viene a ser la entrada a los foros, se vieran las últimas imágenes ( fotos, ya que en realidad el foro es de fotografía ) subidas por los usuarios en sus posts, dentro de los diferentes foros.

Sé que existe hace algún tiempo un mod que permite mostrar en portal.php la última o últimas fotos subidas a una galería pública en concreto, osea es un mod que básicamente sirve para mostrar las últimas imágenes subidas al album, pero yo quiero que se muestren las últimas imágenes subidas a cualquiera de los foros.

Esto que pido y que puede parecer tan raro es lo que hace el script "4images" por ejemplo, y para un foro de fotografía es muy útil, ya que permite que los usuarios reconozcan las fotos que no han visto antes en el momento de entrar a los foros y sin tener que recorrer éstos uno a uno.

La cosa es que me ha llevado tanto tiempo currarme el foro en phpbb que ahora no quiero pasarme al 4images, porque además perdería los comentarios ya hechos sobre las fotos, y porque quitando esta función por lo demás me gusta mi foro más que el de 4images, que en realidad es una galería.

De todos modos hice la prueba e instalé, en la misma base de datos donde tengo el phpbb, el 4images. Haciendo esto, y con un mod que hay, no pierdo los usuarios. Para que os hagais una idea de lo que quiero decir podéis ver ambos foros. El normal, currado por mí pero sin la posibilidad de ver las fotos recientes en el portal, está en :

http://www.jrey.net/foros/portal.php

El foro que me permite hacer esto que yo quiero pero que por lo demás, aunque está bien, no me acaba de convencer, está en esta dirección:

http://www.jrey.net/foro

Este script, el de 4images, lo utilizan en muchos foros de fotografía como en ojodigital.net . La cosa es que yo me he emperrado en usar el phpbb y hasta que no logre eso pues no me quedo tranquilo.

Y ahora van los datos para los más entendidos en esto, Yo creo que alguien que sepa de qué va el asunto sabría solucionarme el problema editando estas plantillas y páginas en php. Yo lo he intentado pero el resultado ha sido bastante lamentable.

A ver, en el mod que comentaba antes y que sirve para mostrar la última foto subida en la galería dentro del portal.php podemos encontrar esto:

Código a añadir en portal.php según este mod:



Código:

//
// Get Newest Pic
//
$Display = 'Recent';_ _// Replace 'Recent' with 'Random'
$CategoryID = 0;_ _// Replace 0 with a category ID. Otherwise, keep it as it is
_ _ _ _ _// Example: http://www.yourdomain.com/phpBB2/album_cat.php?cat_id=3
_ _ _ _ _// Category ID is 3

if ($Display == 'Random')
{
_ _if ($CategoryID != 0)
_ _{
_ _ _ $sql = "SELECT p.pic_id, p.pic_title, p.pic_username, p.pic_user_id, p.pic_time, p.pic_desc, p.pic_approval, u.username
_ _ _ _ _FROM ". ALBUM_TABLE ." AS p
_ _ _ _ _LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
_ _ _ _ _WHERE_ pic_approval = 1 AND pic_lock = 0 AND pic_cat_id = $CategoryID
_ _ _ _ _ORDER BY RAND()
_ _ _ _ _LIMIT 0,1";
_ _}
_ _else {
_ _ _ $sql = "SELECT p.pic_id, p.pic_title, p.pic_username, p.pic_user_id, p.pic_time, p.pic_desc, p.pic_lock, p.pic_approval, u.username
_ _ _ _ _FROM ". ALBUM_TABLE ." AS p
_ _ _ _ _LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
_ _ _ _ _WHERE_ pic_approval = 1 AND pic_lock = 0
_ _ _ _ _ORDER BY RAND()
_ _ _ _ _LIMIT 0,1";
_ _}
}

else if ($Display == 'Recent')
{
_ _if ($CategoryID != 0)
_ _{
_ _ _ $sql = "SELECT p.pic_id, p.pic_title, p.pic_username, p.pic_user_id, p.pic_time, p.pic_desc, p.pic_approval, u.username
_ _ _ _ _FROM ". ALBUM_TABLE ." AS p
_ _ _ _ _LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
_ _ _ _ _WHERE_ pic_approval = 1 AND pic_lock = 0 AND pic_cat_id = $CategoryID
_ _ _ _ _ORDER BY pic_time DESC
_ _ _ _ _LIMIT 0,1";
_ _}
_ _else
_ _{
_ _ _ $sql = "SELECT p.pic_id, p.pic_title, p.pic_username, p.pic_user_id, p.pic_time, p.pic_desc, p.pic_lock, p.pic_approval, u.username
_ _ _ _ _FROM ". ALBUM_TABLE ." AS p
_ _ _ _ _LEFT JOIN ". USERS_TABLE ." AS u ON p.pic_user_id = u.user_id
_ _ _ _ _WHERE_ pic_approval = 1 AND pic_lock = 0
_ _ _ _ _ORDER BY pic_time DESC
_ _ _ _ _LIMIT 0,1";
_ _}
}

if (!$result = $db->sql_query($sql))
{
_ _message_die(GENERAL_ERROR, 'Could not query album information', '', __LINE__, __FILE__, $sql);
}

$picrow = $db->sql_fetchrow($result);

$pic_poster = '<a href="'. append_sid("profile.$phpEx?mode=viewprofile&". POST_USERS_URL .'='. $picrow['pic_user_id']) .'">'. $picrow['pic_username'] .'</a>';
//
// END: Get Newest Pic
//



y esto:



Código:

// Photo Album
_ _'L_NEWEST_PIC' => $lang['Newest_pic'],
_ _'PIC_IMAGE' => append_sid('album_thumbnail.'. $phpEx . '?id=' . $picrow['id']),
_ _'PIC_TITLE' => $picrow['title'],
_ _'PIC_POSTER' => $picrow['username'],
_ _'U_PIC_LINK' => append_sid('album_view.' . $phpEx . '?id=' . $picrow['id']),
_ _'PIC_TIME' => create_date($board_config['default_dateformat'], $picrow['timestamp'], $board_config['board_timezone']),



Vale, pues dentro de la página index.php del foro que tengo instalado con 4images vemos este código que supuestamente es lo que hace que se muestren las últimas imágenes subidas ( y que además funciona ) :



Código:

//-----------------------------------------------------
//--- Show New Images ---------------------------------
//-----------------------------------------------------
$imgtable_width = ceil(intval($config['image_table_width']) / $config['image_cells']);
if ((substr($config['image_table_width'], -1)) == "%") {
$imgtable_width .= "%";
}

$additional_sql = "";
if (!empty($additional_image_fields)) {
foreach ($additional_image_fields as $key => $val) {
$additional_sql .= ", i.".$key;
}
}

$num_new_images = $config['image_cells'];
$sql = "SELECT i.image_id, i.cat_id, i.user_id, i.image_name, i.image_description, i.image_keywords, i.image_date, i.image_active, i.image_media_file, i.image_thumb_file, i.image_download_url, i.image_allow_comments, i.image_comments, i.image_downloads, i.image_votes, i.image_rating, i.image_hits".$additional_sql.", c.cat_name".get_user_table_field(", u.", "user_name")."
FROM ".IMAGES_TABLE." i, ".CATEGORIES_TABLE." c
LEFT JOIN ".USERS_TABLE." u ON (".get_user_table_field("u.", "user_id")." = i.user_id)
WHERE i.image_active = 1 AND c.cat_id = i.cat_id AND i.cat_id IN (".get_auth_cat_sql("auth_viewcat").")
ORDER BY i.image_date DESC
LIMIT $num_new_images";
$result = $site_db->query($sql);
$num_rows = $site_db->get_numrows($result);

if (!$num_rows) {
$new_images = "<table width=\"".$config['image_table_width']."\" border=\"0\" cellpadding=\"".$config['image_table_cellpadding']."\" cellspacing=\"".$config['image_table_cellspacing']."\"><tr class=\"imagerow1\"><td>";
$new_images .= $lang['no_new_images'];
$new_images .= "</td></tr></table>";
}
else {
$new_images = "<table width=\"".$config['image_table_width']."\" border=\"0\" cellpadding=\"".$config['image_table_cellpadding']."\" cellspacing=\"".$config['image_table_cellspacing']."\">";
$count = 0;
$bgcounter = 0;
while ($image_row = $site_db->fetch_array($result)){
if ($count == 0) {
$row_bg_number = ($bgcounter++ % 2 == 0) ? 1 : 2;
$new_images .= "<tr class=\"imagerow".$row_bg_number."\">\n";
}
$new_images .= "<td width=\"".$imgtable_width."\" valign=\"top\">\n";

show_image($image_row);
$new_images .= $site_template->parse_template("thumbnail_bit");
$new_images .= "\n</td>\n";
$count++;
if ($count == $config['image_cells']) {
$new_images .= "</tr>\n";
$count = 0;
}
} // end while

if ($count > 0) {
$leftover = ($config['image_cells'] - $count);
if ($leftover >= 1) {
for ($f = 0; $f < $leftover; $f++) {
$new_images .= "<td width=\"".$imgtable_width."\">\n&\n</td>\n";
}
$new_images .= "</tr>\n";
}
}
$new_images .= "</table>\n";
} // end else

$site_template->register_vars("new_images", $new_images);
unset($new_images);


Me parece interesante comparar ambos códigos,aunque hay que tener en cuenta que, pese a estar ambos foros usando la misma base de datos, se han instalado con prefijos diferentes en la susodicha base de datos ( ya que sinó habría machacado un foro sobre otro ). Las tablas que usan ambos foros, además de usar prefijos diferentes, también se llaman de diferente modo, y eso también hay que tenerlo en cuenta. De hecho me ha llamado la atención que el foro de 4images apenas crea tablas en la base de datos, por lo menos comparado con las tropecientas que crea el foro de phpbb.

Bueno, por si sirve de algo aquí pongo un par de instantáneas de phpmyadmin con las tablas a las que "llama" uno y otro documento de .php respectivamente.

Estas son las tablas que me crea el 4images en la base de datos:




Y estas son las tablas, dentro de 4images_images, a las que supuestamente llama el index.php de este script:




Estas son las tablas a la que llama el código de portal.php al ponerle el mod ( osea lo que hay en phpbb_album)




Y estas son las tablas a las que creo que tendría que llamar yo para para que me mostrara el portal.php las últimas fotos subidas en los foros:




(El mensaje sigue abajo )
__________________
Mi web es http:www.jrey.net

Última edición por touza; 25/11/2003 a las 05:40
  #2 (permalink)  
Antiguo 25/11/2003, 05:41
Avatar de touza  
Fecha de Ingreso: febrero-2003
Ubicación: barcelona
Mensajes: 65
Antigüedad: 21 años, 3 meses
Puntos: 0
Por otra parte también está interesante ver los diferentes códigos de portal_body.tpl ( en el caso de mi foro en phpbb, con el mod instalado para ver la última foto subida al álbum) y de home.html, en el caso del foro de 4images.

El mod de phpbb me dice que tengo que añadir esto a portal_body.tpl para que me muestre la última foto subida al álbum:

<a href="{U_ALBUM}">{L_ALBUM}</a><br />

y esto también:

<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline">
_ _ _ _ _<tr>
_ _ _ _ _<td class="catHead" height="25"><span class="genmed">{L_NEWEST_PIC}</span></td>
_ _ _ _ _</tr>
_ _ _ _ _<tr>
_ _ _ _ _<td class="row1" align="left"><span class="gensmall" style="line-height:150%"><center><br /><br /><a href="{U_PIC_LINK}"><img src="{PIC_IMAGE}" border="0" alt="{L_NEWEST_PIC}"></a><br /></center>{PIC_TITLE} by {PIC_POSTER}<br />on {PIC_TIME}<br />&</span></td>
_ _ _ _ _</tr>
_ _ _ _ </table>_ _ _ _

_ _ _ _ <br />

Mientras que el código de home.html para el foro de 4images es este:

{header}
<table width="640" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>
<table width="640" border="0" cellspacing="0" cellpadding="0" class="tablehead">
<tr>
<td colspan="4"><img src="{template_url}/images/header_top.gif" width="640" height="6" alt="" /></td>
</tr>
<tr>
<td width="6"><img src="{template_url}/images/header_left.gif" width="6" height="60" alt="" /></td>
<td width="405"><img src="{template_url}/images/header_logo.gif" width="405" height="60" alt="" /></td>
<td width="225" align="right">
<form method="post" action="{url_search}">
<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td>
<input type="text" name="search_keywords" size="15" class="searchinput" />
</td>
<td>
<input type="submit" value="{lang_search}" class="button" name="submit" />
</td>
</tr>
<tr valign="top">
<td colspan="2"><a href="{url_search}" class="smalltext">{lang_advanced_search}</a></td>
</tr>
</table>
</form>
</td>
<td align="right" width="6"><img src="{template_url}/images/header_right.gif" width="6" height="60" alt="" /></td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="bordercolor">
<table width="640" border="0" cellspacing="1" cellpadding="0">
<tr>
<td class="tablebgcolor">
<table width="638" border="0" cellspacing="1" cellpadding="0">
<tr>
<td class="navbar" height="23">
<table width="636" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="{template_url}/images/spacer.gif" width="4" height="4" alt="" />{clickstream}</td>
<td align="right">
<a href="{url_top_images}">{lang_top_images}</a>&
<a href="{url_new_images}">{lang_new_images}</a>&
</td>
</tr>
</table>
</td>
</tr>
</table>
<table width="638" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" class="row2" valign="top">
<table width="150" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="head2" height="20"><img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_registered_user}</td>
</tr>
<tr>
<td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
</tr>
<tr>
<td align="center" class="row1">{user_box}</td>
</tr>
<tr>
<td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
</tr>
</table>
{if random_image}
<table width="150" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="head2" height="20"> <img src="{template_url}/images/spacer.gif" alt="" width="4" height="4" />{lang_random_image}</td>
</tr>
<tr>
<td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
</tr>
<tr>
<td align="center" class="row1">
<br />
{random_image}
<br />
<br />
</td>
</tr>
<tr>
<td class="tablebgcolor"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
</tr>
</table>
{endif random_image}
</td>
<td width="1" class="bordercolor" valign="top"><img src="{template_url}/images/spacer.gif" alt="" width="1" height="1" /></td>
<td width="18" valign="top"><img src="{template_url}/images/spacer.gif" alt="" width="18" height="18" /></td>
<td width="450" valign="top">
<br />
<span class="title">{site_name}</span>
<br />
<hr size="1" />
{if categories}
<table width="450" border="0" cellspacing="0" cellpadding="1">
<tr>
<td class="head1">
<table width="100%" border="0" cellspacing="0" cellpadding="3">
<tr>
<td class="head1" valign="top">{lang_categories}</td>
</tr>
<tr>
<td class="row2" valign="top">{categories}</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
{endif categories}{lang_site_stats}<br />
<br />
{if msg}{msg}<br /><br />{endif msg}
<table width="450" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="head1">
<table width="100%" border="0" cellspacing="0" cellpadding="4">
<tr>
<td class="head1" valign="top">{lang_new_images}</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="head1">{new_images}</td>
</tr>
</table>
<br />
{whos_online}
<br />
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>{category_dropdown_form}</td>
<td align="right">{setperpage_dropdown_form}</td>
</tr>
</table>
<p>&</p>
</td>
<td width="19" valign="top"><img src="{template_url}/images/spacer.gif" alt="" width="19" height="19" /></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="640" border="0" cellspacing="0" cellpadding="0" class="tablebottom">
<tr>
<td width="6"><img src="{template_url}/images/footer_left.gif" width="6" height="19" alt="" /></td>
<td width="405">&</td>
<td width="225">&</td>
<td width="6"><img src="{template_url}/images/footer_right.gif" width="6" height="19" alt="" /></td>
</tr>
</table>
</td>
</tr>
</table>
{footer}


En fin, que como se puede ver la cosa está difícil. Conste que no se me pasa por alto un dato fundamental: si funcionara todo esto, lo que se me mostraría en portal.php serían en realidad las últimas fotos subidas en los foros pero A TAMAÑO REAL !!!, cuando yo quiero que se muestren las miniaturas, igual que en el álbum.Lo que pasa es que eso si que ya no sé como lo tengo que indicar en el portal.php, pero sí sé que en mi servidor tienen instaladas las últimas librerías GD, osea que sólo sería cuestión de indicarle a portal.php que haga lo mismo que el álbum, que cree las miniaturas de las fotos que va subiendo la gente a los foros.

En fin, ya me contaréis que os parece todo este rollo, pero yo creo que si lograra alguien hacer este mod sería la releche.

Saludos y hasta pronto.
__________________
Mi web es http:www.jrey.net
  #3 (permalink)  
Antiguo 25/11/2003, 09:43
Avatar de touza  
Fecha de Ingreso: febrero-2003
Ubicación: barcelona
Mensajes: 65
Antigüedad: 21 años, 3 meses
Puntos: 0
Una alternativa...

Curioseando por hotscripts encontré un .php que, incluido dentro de la plantilla portal_body.tpl, me muestra dentro del portal una foto al azar de entre las que han subido los usuarios a los foros.Lo he probado y funciona ( podéis ver como funciona aquí: http://www.jrey.net/foros/portal.php ), simplemente tienes que incluir ese archivo php dentro de la carpeta que tienes asignada para los "attachments" ( "files" por defecto ), y su código es este:

<?
/*
|-------------------------------------------------------------------------------------------------------|
| JARD : Just Another Random Displayer |
| Copyright © 2003 - Alessandro Pellegrini ([email protected]) |
| You are allowed to use, edit and copy this script. Just leave this copyright notice intact. |
|-------------------------------------------------------------------------------------------------------|
| Syntax: <img src="rid.php"> ===> Displays a random image |
| <img src="rid.php?tnsize=XXX"> ===> Displays a random image of a given |
| size. |
|-------------------------------------------------------------------------------------------------------|
| How to use: |
| Put this file in a directory containing all the images you want to display |
| randomly. If there are no-image files, the script won't consider them. |
| Then connect to this script directly from the addres bar or trought an <img> tag in a |
| html page. |
|-------------------------------------------------------------------------------------------------------|
| What this script supports: |
| This script can handle any gif, jpeg, and png image file. There is no bmp support as long |
| as I think bmp is not a great format for the web. Maybe in a further version I'll add it, or |
| you may add it yourself... |
|-------------------------------------------------------------------------------------------------------|
| Requirements: |
| This script requires GD Libraries. If you want JPG support, you must have installed |
| version 1.6.2 or lower, as long as the JPEG group asked to remove this support due to |
| Copyright motivations... |
| To use any other support, you must have at least PHP 4.3.0 on your server... |
|-------------------------------------------------------------------------------------------------------|
| FOR ANY QUESTION OR BUG REPORT, CONTACT ME AT [email protected] |
|-------------------------------------------------------------------------------------------------------|
*/


// Opens the current folder
$folder=opendir(".");

// Stores all the files in the directory and counts their number
while ($file = readdir($folder))
$names[count($names)] = $file;

// Closes the directory
closedir($folder);

// Sorts the names alphabetically
sort($names);

// Removes all non-image files
$tempvar=0;
for ($i=0;$names[$i];$i++){
$ext=strtolower(substr($names[$i],-4));
if ($ext==".jpg"||$ext==".gif"||$ext=="jpeg"||$ext==" .png"){$names1[$tempvar]=$names[$i];$tempvar++;}
}

// Choses one random image
srand ((double) microtime() * 10000000);
$rand_keys = array_rand ($names1, 2);
$slika=$names1[$rand_keys[0]];

// Checks if you've choosen to resize the image
if (!isset($tnsize)) {

// If not, it displays the choosen image
header ("Location: $slika");

} else {

// Checks if the given size is valid
$tnsize = (integer) $tnsize;
if (($tnsize<20) or ($tnsize>300)){

// If not, it creates an error image and displays it
$img = ImageCreate(100, 100);
$red = ImageColorAllocate($img, 255, 0, 0);
$yellow = ImageColorAllocate($img, 255,255, 0);
ImageString($img, 4, 20, 20, "Dimensione", $yellow);
ImageString($img, 4, 20, 40, "fornita", $yellow);
ImageString($img, 4, 20, 60, "errata!", $yellow);
ImagePNG($img);
ImageDestroy($img);
exit();
}

// We're now sure the image is valid. Now we have to resize it, we're about to use GD libraries.

// It now checks the image format and loads it into a variable
if ($ext==".jpg" || $ext=="jpeg"){
$bigimage = @ImageCreateFromJPEG($slika);
}
if ($ext==".gif"){
$bigimage = @ImageCreateFromGIF($slika);
}
if ($ext==".png" || $ext=="jpeg"){
$bigimage = @ImageCreateFromPNG($slika);
}

// It now creates an empty image of the given size

$tnimage = ImageCreate($tnsize, $tnsize);
$darkblue = ImageColorAllocate($tnimage, 0,0, 127);
ImageColorTransparent($tnimage,$darkblue);

// It now calculates the resizing image factor
$sz = GetImageSize($slika);
$x = $sz[0];
$y = $sz[1];
if ($x>$y) {
$dx = 0;
$w = $tnsize;
$h = ($y / $x) * $tnsize;
$dy = ($tnsize - $h) / 2;
}else{
$dy = 0;
$h = $tnsize;
$w = ($x / $y) * $tnsize;
$dx = ($tnsize - $w) / 2;
}

// Resizes the image
ImageCopyResized($tnimage, $bigimage, $dx, $dy, 0, 0, $w, $h,$x, $y);

// Displays the image
ImagePNG($tnimage);

// Clears the variables
ImageDestroy($tnimage);
ImageDestroy($bigimage);
}

?>


Como véis es muy completo, ya que se supone que utiliza las librerías GD del servidor y todo. Esto significa que no me aparecen las fotos a lo bruto,sino en el tamaño que yo le indique. Así pues, lo que yo hice fue incluir dentro de portal_body.tpl esta tabla:

<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline">
<tr>
<td class="catHead" height="25"><span class="genmed"><b>Ultima foto subida</b></span></td>
</tr>
<tr>
<td class="row1" align="center"><a href="_self" target="_blank"><img src="http://www.midominio.com/carpetadelforo/files/elscript.php" width="130" height="130" alt="Ultima foto subida" border="0" vspace="3"></a></td>
</tr>
</table>

De este modo he logrado que en el portal me aparezca la susodicha "tabla" con una foto de la carpeta "files" escogida al azar y con las dimensiones que le he marcado en este caso ( 130 por 130 ). Pero claro, me falta por definir lo siguiente:

-Primero, me gustaría que la foto apareciese redimensionada proporcionalmente, ya que poniendo un tamaño fijo de ancho y alto como 130 por 130 ó 100 por 100 pues, a no ser que la foto original sea cuadrada, me va a salir siempre desproporcionada de un lado o de otro.

-Lo segundo que me gustaría es que en vez de escoger una foto al azar escogiese la última de las que se han subido a la carpeta files ( osea a los foros ). Yo creo que esto no debe ser muy difícil, sería cuestión de indicarle que escoja la imagen con la fecha más reciente ( aunque yo eso no sé hacerlo ).

-Y tercero, y quizás esto sea lo más difícil por no decir imposible: que al pinchar en la foto me lleve directamente al mensaje en el que está incluida. Como habréis visto yo le he puesto "_blank"en el enlace , pero es como no poner nada.

En fin, puede que todo esto no sean más que cábalas y no tenga nada que ver, pero en un principio me pareció una buena alternativa para no tener que meterse con rutas a la base de datos que no hay quien entienda.


Saludos.
__________________
Mi web es http:www.jrey.net
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 21:14.