Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/07/2003, 21:06
kech
 
Fecha de Ingreso: marzo-2003
Mensajes: 277
Antigüedad: 22 años
Puntos: 0
REL. Utilidad para cargar los emoticons de los foros phpbb

Holas cree este script para unos foros que tengo que estan echos en phpbb

y quisas les interese

el unico dato que necesitan cambiar es

el directorio donde tengan los smiles
$path = "./emoticons/";




Código PHP:
<html>
<head>
<title>Creador de pack para emoticons</title>
</head>
<body>
<font size="+2"><b>Creador Pack de emoticons para los foros PHPBB</b></font> <br>
<br>
<?
if(!isset($_POST['hidden']))
  echo 
"Selecciona los emoticons que deceas para crear el pack
        <form name=\"form1\" method=\"post\" action=\""
.$PHP_SELF."\"><input type=\"hidden\" name=\"hidden\">";
else
  echo 
"Este es el listado que va a contener el archivo de pack";
?>

<table width="100%" border="0" cellspacing="1" cellpadding="0">
<tr><td>Archivo</td><td>Nombre</td><td>Acceso directo</td><td>Imagen</td>
</tr>
<?
@unlink("emoticons.pak");
$path "./emoticons/";// este campo tienes que modificarlo por el directorio donde tengas tus imagenes
$dir opendir($path);
$num_fila 0;
while(
$elemento readdir($dir)){
        
$path_parts pathinfo($elemento);
        if(
$path_parts["extension"] == "gif"){
            
$name str_replace(".".$path_parts["extension"],"",$path_parts["basename"]);
            if(isset(
$_POST['hidden'])){
                  if(isset(
$_POST[md5($name)])){
                        echo 
"<tr ";
                        if(
$num_fila%2==0)
                             echo 
"bgcolor=#dddddd"//si el resto de la división es 0 pongo un color
                        
else
                             echo 
"bgcolor=#ddddff"//si el resto de la división NO es 0 pongo otro color
                        
echo ">";
                        echo 
"<td>".$elemento."</td><td>".$_POST[$name."1"]."</td><td>
                             "
.$_POST[$name."2"]."</td><td><img src=\"".$path.$path_parts["basename"]."\"></td></tr>";
                        
$linea $path_parts["basename"]."=+".$_POST[$name."1"]."=+".$_POST[$name."2"];
                        
$archivodest fopen("emoticons.pak""a");
                        
fwrite($archivodest$linea."\n");
                        
fclose($archivodest);
                      }
                }
            else{
              echo  
"<tr ";
              if(
$num_fila%2==0)
                  echo 
"bgcolor=#dddddd"//si el resto de la división es 0 pongo un color
              
else
                  echo 
"bgcolor=#ddddff"//si el resto de la división NO es 0 pongo otro color
              
echo "><td>".$path_parts["basename"]."</td>
                    <td><input type=\"text\" name=\""
.$name."1\" value=\":".ucfirst($name)."\"></td>
                    <td><input type=\"text\" name=\""
.$name."2\" value=\"::".$name.":\"></td>
                    <td><img src=\""
.$path.$path_parts["basename"]."\"></td>
                    <td><input type=\"checkbox\" name=\""
.md5($name)."\" value=\"".$name."\"></td></tr>
                    <input type=\"hidden\" name=\"array[]\">"
;
                }
         
$num_fila++;
        }
     }
?>
</table><br>
<? if(isset($_POST['hidden']))
    echo 
"Preciona <a href=\"emoticons.pak\">Aqui</a> para bajar el archivo creado<br><br>
          Recuerda que los archivos de las imagenes tienes que dejarlas en el directorio /images/smiles/<br>
          Para volver presiona <a href=\""
.$PHP_SELF."\">Aqui</a> <br>";
   else
    echo 
"<center><input type=\"submit\" name=\"Submit\" value=\"Enviar\"></center></form>";
    
?>
<br><font size="1">By Kech cualquier comentario o sugerencia <a href="mailto:[email protected]">Aqui</a></font>
</body>
</html>

cualquier comentario o sugerencia para mejorar este script son bienvenidas

Lo que falta mejorar
es poder escoger el orden ya que actualmente ordena por archivo si a alguien se el ocurre como hacerlo se lo agradeceria

ojala les sirva ya que a mi me saca de un problema al momento de subir nuevas caritas a los foros ya que lo tenia que hacer manualmente
salu2