Libro de Visitas Gratis
Inicio | Directorio de Páginas | Diseño Gráfico | Gadgets | Posicionamiento | Webmasters| Buscador de Artículos | Glosarios

Sistema de opiniones con comentarios incluidos sin bases de datos

Añade Tu Web Al Directorio de NocionDigital.com

Hola amigos, aquí os explico cómo hacer un sistema de opiniones con posibilidad de comentar cada opinión sin sql, ni access, ni nada... con simples archivos de texto.

Podéis ver el script funcionar perfectamente en www.ommadawn.es.vg, en la sección EL GUITARRAZO . Espero que os guste.

INSTRUCCIONES:

crear los siguientes archivos:

contador.php
contador.txt
escribir.php
index.php
nuevaopinion.php
ver.php
procesarcomentario.php
index.txt

Podéis bajaros el script de www.redhispana.org/chuloyo/opiniones.zip.

Todos los archivos són necesarios para que funcione el Script.

Contador.php:

<!-- archivo que suma 1 visita al contador.txt. -->
<?
$archivo = "contador.txt";
$abre = fopen($archivo, "r");
$total = fread($abre, filesize($archivo));
fclose($abre);
$abre = fopen($archivo, "w");
$total = $total + 1;
$grabar = fwrite($abre, $total);
fclose($abre);
echo "<input type=hidden name=visitas value=`".$total."`>";
echo "<input type=hidden name=comentarios value=`comentarios".$total."`>";
?>

Contador.txt:
<!-- archivo para contar el número de visitas y así crear los txts.-->
1 (únicamente poner este número)

Escribir.php:
<!-- archivo para enviar nuevas opiniones-->
<FORM ACTION="nuevaopinion.php" METHOD="GET">
Nombre: <input type="text" name="nombre" size="30"><br>
Email: <input type="text" name="email" size="30"><br>
Título de la opinión: <input type="text" name="titulo" size="30"><br>
Opinión: <textarea rows="5" name="opinion" cols="80"></textarea> <!-- Se puede utilizar html en todos los campos -->
<input type="submit" value="Enviar"><input type="reset" value="Borrar">
<input type="hidden" name="fecha" value="<? echo(date("d/m/Y")); ?>"> <!-- Ponemos la fecha en un campo oculto--><? include("contador.php") ?><!-- incluimos el contador para que se forme el txt automáticamente segú
n el número de visitas, ejemplo, 22 visitas se creará el archivo 22.txt y comentarios22.txt, sería la opinión número 22 --></form>

Index.php:
<!-- archivo para mostrar las opiniones
<table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td width="100%" bgcolor="#00CC00"><div align="center"><table border="0" cellpadding="4" cellspacing="1" width="100%"><tr><td width="69%" bgcolor="#0
0CC00" align="center"><b><font size="2" color="#FFFFFF">TÍTULO DE LA OPINIÓN</font></b></td><td width="19%" bgcolor="#00CC00" align="center"><b><font size="2" color="#FFFFFF">AUTOR</font&
gt;</b></td><td width="6%" bgcolor="#00CC00" align="center"><b><font size="2" color="#FFFFFF">FECHA</font></b></td>
</tr><? include("index.txt") ?>
</table></div></td></tr></table> <!-- con tablas para que quede más bonito, aquí se mostrarán las opiniones escritas incluyendo el index.txt -->

Nuevaopinion.php:
<!-- archivo para insertar opiniones -->
<?
$visitas .=".txt";
$fp = fopen($visitas,"w");
?>
<?
$comentarios .=".txt";
$fp = fopen($comentarios,"w");
?> <!-- Creamos los archivos COMENTARIOS*.txt y VISITAS*.txt.-->
<?php

$fp = fopen("$visitas","a+"); //creamos el archivo txt según las visitas y lo abrimos
//escribimos la opinión en el txt creado
if(fwrite($fp, "$HTTP_GET_VARS[opinion]<p align=center><a href=`mailto:$HTTP_GET_VARS[email]`><b>Enviar email al autor</b></a>")){
Echo "<p align=`justify`><b><font size=`3`>Gracias<br></font></b><font size=`2`>Gracias por insertar una nueva opinión. Tu opinión ya está insertada lista para que la gente la lea y la comente
.<p align=center><b><a href=`index.php`>Volver a el guiarrazo</a></font>";
}Else{
Echo "<p align=`justify`><b><font size=`3`>ERROR<br></font></b><font size=`2`>Por algún problema, tu opinión no se ha podido insertar correctamente. Inténtalo más tarde.";
}
fclose($fp);
?><?php

$fp = fopen("index.txt","a+"); //abrimos index.txt
//escribimos en el archivo para publicar la opinión en index.php
if(fwrite($fp, "</font></b><tr><td width=`70%` bgcolor=#FFFFFF align=center><a href=`ver.php?tit=$HTTP_GET_VARS[titulo]&autor=$HTTP_GET_VARS[nombre]&opi=$visitas&email=$HTTP_GET_VARS[email]&fecha=$HTTP_GET_VARS[f
echa]&comentarios=".$comentarios."` class=opi>$HTTP_GET_VARS[titulo]</a></td><td width=`20%` bgcolor=`#FFFFFF` align=center><font size=1><a href=`mailto:$HTTP_GET_VARS[email]` class=vol>$HTTP_GET_VARS[nombre]</a>
</font></td><td width=10% bgcolor=white align=center>$HTTP_GET_VARS[fecha]</td></tr>")){
Echo " ";
}Else{
Echo " ";
}
fclose($fp);
?>

Procesarcomentario.php:
<!-- archivo para incluir comentarios en las opiniones -->
<?php
//miramos en los parámetros de la url donde tenemos que escribir el comentario.
$fp = fopen("$HTTP_GET_VARS[archivo]","a+");
//escribimos en el archivo el comentario con tablas y todo
if(fwrite($fp, "<tr><td width=`33%` bgcolor=`#EEEEEE`><b>$HTTP_GET_VARS[Titulo]</b></td></center></center><td align=center width=`33%` bgcolor=`#EEEEEE`>Fecha: <b>$HTTP_GET_VARS[Fecha]</b></td
><td width=`34%` bgcolor=`#EEEEEE`><p align=`right`><b>Por <a href=`mailto:$HTTP_GET_VARS[Email]`>$HTTP_GET_VARS[nombre]</a></b></td></tr><center><center><tr><td width=`100%` colspan=
3><p align=justify>$HTTP_GET_VARS[Comentario]</td></tr>
")){
Echo "<p align=`justify`><b><font size=`3`>Gracias<br></font></b><font size=`2`>Gracias por insertar tu comentario a una opinión. Tu comentario ya está puesto para que la gente lo lea.<p align=cen
ter><b><a href=`ver.php?tit=$HTTP_GET_VARS[t]&email=$HTTP_GET_VARS[correo]&opi=$HTTP_GET_VARS[txto]&fecha=$HTTP_GET_VARS[date]&autor=$HTTP_GET_VARS[name]&comentarios=$HTTP_GET_VARS[archivo]`>Volver a la opinión&l
t;/a></font>";
}Else{
Echo "<p align=`justify`><b><font size=`3`>ERROR<br></font></b><font size=`2`>Por algún problema, tu comentario no se ha podido insertar correctamente. Inténtalo más tarde.";
}
fclose($fp);
?>

Ver.php
<!-- archivo para ver las opiniones, los comentarios e insertar nuevos comentarios -->

<p align="justify"><font size="3"><b>Leer opinión<br><font color="#000080"><? echo $tit ?> </font></b></font><font size="2">por</font><font color="#000080" size="2"></font&g
t;<font size="2"><b><? echo $autor ?></b><font color="#FF0000"></font>el <font color="#FF0000"></font><? echo $fecha ?></font><hr size="1" color="#9933FF" noshade><p align="justify">&
lt;font color="#000080" face="Arial" size="2"><? include($opi) ?></font>

<!-- formulario para incluir nuevos comentarios -->

<form method="GET" action="procesarcomentario.php">
Nombre: <input type="text" name="nombre"><br>
Título del comentario: <input type="text" name="Titulo"><br>
Comentario: <textarea rows="3" name="Comentario" cols="90"></textarea><br>
Email:<input type="text" name="Email"><br>
<input type="submit" value="Enviar"><input type="reset" value="Borrar>

<!-- campos ocultos (hidden) para mostrarle al archivo procesarcomentario.php a dónde tiene que ir y dónde tiene que escribir. -->

<input type="hidden" name="archivo" value="<? echo $comentarios ?>"><input type="hidden" name="t" value="<? echo $tit ?>"><input type="hidden" name="txto" value="<? echo $opi ?>"><input type="hidden" name="date" valu
e="<? echo $fecha ?>"><input type="hidden" name="name" value="<? echo $autor ?>"><input type="hidden" name="Fecha" value="<? echo(date("d/m/Y")); ?>"><input type="hidden" name="correo" value="<? echo $email ?>">
;</form>

<!-- mostrar comentarios -->

<table border="0" cellpadding="4" cellspacing="1" width="100%"><tr><td width="100%" bgcolor="#FFFFFF"><div align="center"><table border="0" cellpadding="5" width="100%" cellspacing="0"><? include($comentarios) ?></ta
ble></div></td></tr></table>

ESPERO QUE ESTE SCRIPT OS HAYA SERVIDO DE MUCHO. Es eficaz y podéis verlo en funcionamiento en www.redhispana.org/chuloyo/opinion . Para bajaros los archivos www.redhispana.org/chuloyo/opiniones.zip . Para que funcione el script son necesarios todos los archivos y el código modificad solo el diseño, puede que si no controléis no os funcione el script.

Saludos.

 
Hits
DOCUMENTOS RELACIONDOS
1188
Ocultación a simple vista del código.
5230
Calcular DC de una cuenta bancaria.
1212
Menú con información del link.
1941
Volcar la salida de PHP en un fichero.
1257
Titulo cambiante cada pocos segundos.
1342
Contador del tiempo que llevas en la página.
1138
¿Cuanto tarda en cargar una página en ASP?.
3577
Guardar páginas PHP en la Cache del navegador.
4032
Cambio de Cursor.
1369
Acceso a una area segura.
3997
Problemas con acentos y Ajax.
4224
Como habilitar mysql en php 5 release sobre apache 2.0.48 en S.O. Windows XP gracias a zend.com.
1221
Borrar frames no deseados de tus paginas.
1216
Filtro de palabras no deseadas.
1762
Incluir la fecha y la hora desde PHP.
1189
Sitios de carga rápida.
2246
Sistema de encuestas en ASP con Access.
1284
Tres en Rayas.
6325
Pop-up automático.
1928
Leer datos de un fichero CSV.


www.nociondigital.com - Todo para un mundo digital. Páginas Webs, Buscadores y Webmasters....