PHPFanBase, guion original de Sasha, en español
-
- PHPfanBase, guion original de Sasha, en español
- Ejemplo de uso
- Panel de administración (usuario y contraseña: test)
- Descargar en español
- Ver página de la versión original
—–> RESUMEN
PHPFanBase 2.1 es un guión (’secuencia de comandos’ o ’script’) basado en PHP/MySQL especialmente diseñado para ayudarte a mantener un fanlisting. Si alguna vez has administrado un fanlisting, estoy segura de que sabes bien la pérdida de tiempo que puede llegar a suponer el añadir miembros a mano en la página HTML y después tener que cargar las páginas al servidor y escribir correos a los miembros para informarlos de que han sido añadidos a la lista. Con PHPFanBase, puedes hacer todo eso en cuestión de segundos.
El guion usa una base de datos MySQL para almacenar la información de los miembros, y lo único que tienes que hacer una vez instalado todo es ir al panel de administración y aprobar los nuevos miembros que se hayan unido. El guion establecerá entonces el estado del miembro como “aprobado” (los miembros pendientes de aprobación no se muestran en el sitio), y enviará un mensaje a ese miembro haciéndole saber que se les ha añadido a la lista. Esta función también permite eliminar solicitudes de miembros que se han apuntado dos veces, o cambiar su información -como corregir faltas de ortografía, etc- ANTES de que se muestren en la página de miembros del fanlisting.
El panel de administración también permite editar la información de miembros cuyos datos hayan cambiado -como su dirección de correo-e, por ejemplo-, o borrar miembros.
Puedes mostrar la lista de miembros de 2 maneras distintas: los visitantes pueden ver la lista entera o bien ordenados por países. De ese modo, si tu fanlisting tiene muchos miembros, los visitantes pueden ver -por ejemplo- sólo los de España.
PHPFanBase está especialmente diseñado para integrarse de lleno en sitios ya existentes. Esto significa que funciona mejor en sitios ya diseñados previamente, cuando ya dispongas de la interfaz gráfica, la página index, la introducción (about), y cualquier otra página habitual en un fanlisting. Las únicas páginas que vienen con el guión son la de unirse y la de la lista de miembros, las otras tendrás que hacerlas tú mismo.
PHPFanBase 2.1 está escrito en PHP 3 y trabaja en combinación con una base de datos en MySQL. Algunas de sus características son:
- interfaz más sencilla
- número ilimitados de miembros
- ordenados por país o por fecha de unión
- correo-e de notificación al administrador cuando alguien se une
- correo-e de notificación al miembro cuando se le aprueba
- 100% personalizable
- hoja de estilos prediseñada
- contabilidad del número total de miembros
- panel de administración sencillo
Para ver las nuevas características de la versión 2, échale un vistazo al registro de cambios al final de este archivo.
Sasha quiere agradecer a las siguientes personas su ayuda a la hora de hacer PHPFanBase un guion mejor:
Naddy - http://www.spiritcrow.net (por su tutorial de conversión desde Megabook)
Iva - http://www.supersonicsquirrel.net (por la lista de países y un pequeño Javascript)
Bonnie - http://splodge.nu (por todas las pruebas e ideas maravillosas)
+ todos aquellos que beta-testearon el guion o escribieron con preguntas, agradecimientos y sugerencias!
—–> REQUERIMIENTOS
- PHP 3 o superior
- Base de datos MySQL
—–> ARCHIVOS & CARPETAS DEL PAQUETE DE LA VERSIÓN EN ESPAÑOL (ESTA VERSIÓN RESPETA LAS REGLAS DE THEFANLISTINGS.ORG, ASÍ QUE TAMBIÉN TENDRÁS QUE CARGAR LAS PÁGINAS EN INGLÉS QUE SE INCLUYEN EN EL PAQUETE -SÓLO ES JOIN.PHP
).
admin.php = el panel de administración que usas para añadir/editar/borrar miembros
bacthmembers.php = archivo que se usa para añadirse miembros a la base de datos
config.php = archivo que contiene toda la información de configuración
pais.php = guion que muestra los miembros ordenados por países
crear.php = guion que crea la tabla en la base de datos MySQL
pie.inc = el archivo que se contiene el final de todas las páginas
cabecera.inc = la cabecera que se instalará al comienzo de todas las páginas
invalidacion.php = parte del sistema de protección de la contraseña
unirse.php = archivo que contiene el formulario de unión en español y añade nuevos miembros a la base de datos
join.php = archivo que contiene el formulario de unión en inglés y añade nuevos miembros a la base de datos
entrar.php = parte del sistema de protección de la contraseña
miembros.php = guion que despliega la lista de países de los cuales hay miembros en la lista, y la lista completa de miembros si el visitante elige verla
LÉEME.txt = el archivo que lees ahora mismo 
protección.php = el guion que protege con contraseña el panel de administración
estilo.css = una hoja de estilos que eres libre de personalizar
—–> CÓMO INSTALAR EL GUION
NOTA: Por favor, lee primero todas las intrucciones atentamente antes de hacer nada. Las notas adicionales al final de la página contienen algunos truquitos que pueden resultarte de utilidad.
NOTA 2: Si ya tienes una base de datos preparada, salta al paso 2. Y si quieres usar este guion para más de un fanlisting, lee primero las notas adicionales por favor.
1. Accede al panel de control de tu dominio y crea una nueva base de datos llamada ‘miembros’ (o lo que sea, la verdad). Luego, crea un nuevo usuario, o bien dale acceso a la base de datos a un usuario existente. Hará falta que tenga los permisos de seleccionar, insertar, actualizar, borrar y crear (SELECT, INSERT, UPDATE, DELETE and CREATE privileges).
2. Extrae el los archivos comprimidos al escritorio (o a un lugar fácil de localizar).
3. Abre config.php en un editor de texto (tipo bloc de notas) y edita todas las variables.
4. Carga todos los archivos en tu servidor en el mismo directorio (carpeta) en el que está el fanlisting.
5. Abre el archivo crear.php en tu navegador (la dirección será algo así como http://tudominio.ext/directorio/crear.php). Debes obtener un mensaje que diga “¡Felicidades!! La tabla se ha creado con éxito”, pero si no, comprueba todo lo que has introducido en config.php. Es posible que los detalles sobre la base de datos sean incorrectos.
6. Borra crear.php del servidor para evitar riesgos de seguridad.
7. Abre el arcivo admin.php en el navegador y accede al panel de administración con el nombre de usuario y contraseña que especificaste en config.php.
8. ¡Ya está! Ahora ya puedes empezar a aprobar miembros para tu fanlisting.
Recuerda que puedes editar cabecera.inc, pie.inc y estilo.css a tu gusto. Cuando alguien se haya unido a tu fanlisting, entra en admin.php para aprobarlos. Si alguien envía el formulario de actualización de información, entra en admin.php y ve a la página de editar miembros. Usa el formulario de búsqueda para encontrar al miembro en la base de datos. No hace falta que relllenes todos los campos, sólo uno o dos bastan para encontrar al miembro. Luego cambia los detalles y pulsa sobre el botón de ‘enviar’ para que los cambios se hagan efectivos.
9. También puedes mostrar la fecha en la que actualizaste el fanlisting por última vez (por ejemplo, la última vez que aprobaste o editaste la información de un miembro). Recomiendo esto encarecidamente, pues mostrar la fecha de última actualización es una regla obligatoria en TheFanlistings.org. Si no pones la fecha de actualización en la página principal de tu sitio, te arriesgas a que pongan tu fanlisting en la lista de problemáticos (’Troubles list’). De todas formas, con este pedacito de código, la fecha se actualiza automáticamente cada vez que haces cambios en el fanlisting.
Inserta lo que sigue en la página (que debe ser un archivo con la extensión .php):
<?include(”config.php”);
$query=”SELECT * FROM $table_u”;
$result=mysql_query($query);
$num=mysql_numrows($result);
$i=0;
while ($i < $num) {
$last=mysql_result($result,$i,”date”);
?>
<p>This fanlisting was last updated on <?=$last?>.</p>
<? ++$i; } ?>
Puedes mostrar el número total de miembros en tu página principal por medio del siguiente código (¡la página donde pongas esto debe tener la extensión .php para que funcionen los códigos!!):
<? include(”config.php”);
$query=”SELECT * FROM $table WHERE apr=’y'”;
$result=mysql_query($query);
$num=mysql_numrows($result);
?> <p>We have a total of <b><?=$num?></b> members!<br>¡Tenemos un total de <b><?=$num?></b> miembros!</p>
Si quieres incluir el número de fans pendientes (miembros todavía no aprobados), usa lo siguiente:
<? include(”config.php”);
$query2=”SELECT * FROM $table WHERE apr!=’y'”;$result2=mysql_query($query2);
$num2=mysql_numrows($result2);
?> <p>We have a total of <b><?=$num2?></b> pending <? if ($num2 == “1″){ ?>member<? } else { ?>members<? } ?>!<br>El número de miembros pendientes es de <b><?=$num2?></b></p>
—> NOTAS ADICIONALES
- Puedes usar este guion para más de un fanlisting. Lo único que tienes que cambiar para ello es el nombre de la tabla que este guion usa. Abre config.php en un editor de texto y cambia el nombre de la tabla “fanlisting” para el que quieras.
- Si quieres usar archivos de cabecera y de pie ya existentes, no hay más que borrar cabecera.inc y pie.inc del servidor y cambiar la ruta en el archivo config.php. También puedes editar cabecera.inc y pie.inc como mejor te convenga para que sean iguales a los que ya tienes. Esto último es lo más recomendable.
- El campo de comentarios es el único que entra en la base de datos pero cuyo contenido no se muestra en la lista de miembros. Puedes usar este campo para cualquier otra cosa si no quieres recibir comentarios. Cualquier cosa que se introduzca en ese campo aparecerá en la base de datos y tú podrás verla desde el panel de administración, pero no lo verá nadie que esté explorando la lista de miembros. Edita a tu antojo la descrición del campo de comentarios en unirse.php.
- También puedes cambiar el nombre de los archivos index.php y admin.php, pero asegúrate de que se quedan en el mismo directorio (carpeta) que el archivo config.php.
- La lista de países que aparece en miembros.php extrae los países de la base de datos. Puesto que la lista de países es ahora un menú desplegable, la gente no podrá poner diferentes nombres para un mismo país (por ejemplo: USA, U.S.A, etc.). De todas formas, si vas a convertir una lista de miembros existente a PHPFanBase, es posible que tengas el mismo país escrito de modos diferentes. El único modo de arreglar esto es yendo a phpMyAdmin, seleccionar SQL tab, y pegar lo siguiente en la caja de texto:
UPDATE xxxx SET country = “USA” WHERE country = “U.S.A.”;
Asegúrate de cambiar xxxx al nombre de la tabla en la que quieras hacer los cambios. Puedes ejecutar el comando tantas veces como necesites y para tantos países como tengas que actualizar. Ten en cuenta simplemente que el primer país que aparece entre comillas (”") sustituirá al segundo. En este ejemplo this example, en todos los lugares donde antes ponía U.S.A., después aparecerá USA.
[Nota de la traductora: he colocado los países de habla hispana y aquellos más relacionados con el mundo hispánico en primer lugar, puesto que las personas de esos países serán los que con más probabilidad acudan a la versión en español de tu sitio; de todas formas, el nombre del país se publicará en la lista en inglés ;).]
- Si tu fanlisting ya tiene un buen puñado de miembros, necesitarás añadirlos a tu base de datos. Hay varias maneras de hacerlo. (¡Atención! Si quieres trasladar los miembros desde una lista hecha con Megabook, lee el tutorial al respecto que hay más abajo!)
#1. Rellena y envía un formulario de unión para cada miembro, y apruébalos luego en el panel de administración. Todos los miembros recibirán un mensaje notificándoles que los has aprobado, a no ser que hayas deshabilitado la opción de enviar mensajes a los miembros en config.php. Si olvidas deshabilitar la función, resultará muy confuso para los miembros recibir ese mensaje si ya hace tiempo que son miembros del fanlisting. Si eliges esta forma para trasladar los miembros y has deshabilitado la funición para añadirlos, no olvides volver a habilitarla si quieres que después los nuevos miembros sí reciban un mensaje.
#2. Puedes ir a PHPMyAdmin y añadir los miembros a la tabla eligiendo “Insertar nueva fila” (”Insert New Row”). Esto no es recomendable si no sabes bien cómo utilizar PHPMyAdmin. Si eliges este método, recuerda poner una “y” en el campo “apr” (”aprobado”).
#3. Puedes usar el archivo lotemiembros.php que se incluye en la descarga. Ábrelo en un editor de texto tipo Notepad (Bloc de Notas) o CuteHTML y añade los datos de los miembros siguiendo las instrucciones del archivo. Asegúrate de que dentro de lo que escribes entre las comillas (”" y ‘) no hay nigún otro tipo de comillas o aparecerán errores. Si quieres que alguno de los datos aparezca entrecomillados, tiens que cambiar todos los ” o ‘ por ” o ‘.
—–> TUTORIAL DE CONVERSIÓN DESDE MEGABOOK
Escrito por Naddy (naddy@spiritcrow.net).
También traducido por C.:.
(http://diletante.net)
En el área de plantillas (’templates’) de Megabook hay un campo llamado “Entry Layout” que determina el aspecto de la entrada, el nombre, país, etc. Lo que tienes que hacer es introducir y guardar lo siguiente (por supuesto, basado en las variables que hayas usado - “var1″ en mi caso es el país)
(”, ‘[name]‘, ‘[email]‘, ‘[url]‘, ‘[var1]‘, ”,’n',’y'),
Después, sólo tienes que cortar y pegar lo que obtienes en la antigua página de miembros en los lugares adecuados del archivo lotemiembros.php, comprobando que lo has escrito todo bien y eso, después ejecutas el archivo. ¡Para mí funcionó como por encanto!
—–> REGISTRO DE CAMBIOS
Version 2.1:
-Arreglados algunos errores
Version 2:
-Panel de administraciñon mejorado
-Nuevo (y con suerte, mejor) sistema de entrada al panel de administración
-Miembros dispuestos en tablas en lugar de etiquetas de listas
-Números de identificación de los miembros con formato en 3 cifras (por ejemplo 003)
-Las direcciones de correo-e de la lista de miembros están protegidas del correo basura por Javascript
-Posibilidad de deshabilitar la notificación de que se han añadido nuevos miembros
-Posibilidad de deshabilitar la notificación a los miembros de que se les ha aprobado
-Se ha añadido el campo ‘comentarios’ a la base de datos
-La lista ordenada por países muestra el número de fans de ese país al lado del nombre del país
-Añadido un formulario para actualizar datos para permitir que los usuarios informen de los cambios que quieran hacer a su información
-El formulario de unión ahora comprueba si alguien está ya listado. Si es así, se les informa de la circunstancia y se les pregunta si quieren usar el formulario de actualización para cambiar su información.
-El formulario de unión tiene los países en un menú desplegable, para asegurar que la gente escriba el mismo país de modos diferentes o ponga una ciudad.
-Posibilidad de ordenar los miembros por número de identificación, país o nombre tanto en las páginas que muestran el total de miembros o clasificados por países
-Añadido un enlace a tu panel de administración en los mensajes que te avisan de que nuevos miembros han solicitado su inclusión en la lista
-Posibilidad de que el fan elija ocultar su correo-e. Si un miembro opta por ocultar su direcciónl, podrá verse en el panel de administración, pero no en el sitio; y seguirá siendo posible enviarles un correo-e si le envías un mensaje a todos los miembros.
-Un pequeño guión de Javascript impide que se envíe el mismo formulario varias veces seguidas.
-Añadido un tutorial de conversión de Megabook a PHPFanBase
-Posibilidad de insertar fácilmente una fecha de actualización que se cambia automáticamente
-Inclusión “inteligente” de miembros: ‘fan’ si sólo hay uno, ‘fans’ si hay más.
-Añadido enlace de crédito a las páginas de unirse y de miembros.
—–> CRÉDITOS
Guión (’secuencia de comandos’ o ’script’) creado por Sasha http://www.nothing-less.net/
Traducido por Calítoe.:. http://diletante.net
Si tienes algún problema, pásate por los foros de http://codegrrl.net o de http://foro.hablandoencristiano.info y seguro que alguien puede ayudarte :D.

Comentarios
siempre e querido hacer un fanlisting pero mis escasos conocimientos de programacion y de ingles me lo han impedido ^^ espero todo resulte bien y si todo sale bien me tendran por aqui de nuevo pronto! gracias…
hola! no sirve el link para bajar el script en español ¿ya no estara disponible?
saludos
Hola! estoy preparando un fan sitie, y encontre tu web donde ofrecia un codigo en php para una fansitie, pero creo que tengo un problema, ya que le hago click en bajar “Descargar en español” y me sale error, que no se encuentra el archivo, y me preguntaba si no era una molestia, y me podias mandar el archivo en español a mi correo, si no es mucha molestia, o si conoces otra web que de este codigo o uno parecido en español, gracias y creo que tu web es muy util, gracias por tu atención ^^
perdon, pero mi correo del anterior mensaje esta mal, es ewig@ozu.es o neko_keno@hotmail, te agradeceria que me respandieras al segundo, y disculpa, estoy un poco distraida
PHPFanBase contiene fallos de seguridad, mientras no salga una nueva versión no estará disponible, lo siento…
owo woow está espectacular el tutorial ^_^ muchas gracias! >w