Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/04/2011, 17:17
Avatar de alette666
alette666
 
Fecha de Ingreso: febrero-2010
Ubicación: En la luna
Mensajes: 277
Antigüedad: 14 años, 3 meses
Puntos: 5
Pregunta ordenas de forma acendente los comentarios en mi web en php

hola gente yo (rompiendo como siempre) veran tengo un sistema de comentarios en mi web, pero a la cual quiero agregarle (una funcion que me muestre el horario de que fue emitido) ya que lo tengo andando y cuando hay (por ejemplo) 15 comentarios nuevos.... estos son desordenados, es decir, que el de hace 10 minutos lo coloca primero, y el de hace 2 segundos lo coloca en el medio o a lo ultimo de estos comentarios (lo hace de forma desordenada), alguien me podria ayudar?? PASO A COMENTARLES COMO ESTA ECHO EL CODIGO.

index.php; el contador.txt y el enviar.php

index.php
Código PHP:
<SCRIPT LANGUAGE="JavaScript"> 
function nuevocoment() { 
day = new Date(); 
id = day.getTime(); 
eval("page" + id + " = window.open('enviar.php', '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=370,height=350,left = 371.5,top = 172');"); 

</script> 
<? 
      $contador 
="comentarios/contador.txt"// decimos donde esta el contador 
      
$ag fopen($contador"r+"); // abrimos el contador 
    
$comentarios fread($agfilesize($contador)); //lo leemos y lo guardamos en una bariable 
      
fclose($ag);  // cerramos el contador 
      
echo "Hay en total: ".$comentarios." Comentarios<p>";// ecribimos el total de comentarios 
if($comentarios == '0'){ // si el contador esta en 0 es que no hay nada 
echo "No hay solicitudes a&uacute;n.<br>"// le desimos que no hay comentarios 

else 
// y si no 

foreach (
glob("comentarios/*.php") as $comentari) { // vemos todos los archivos de la carpeta comentarios 
    
include ($comentari); // los incluimos 
   
$nombree strip_tags($nombre); // no permitimos etiquetas HTML 
   
$comentario strip_tags($comentario);// no permitimos etiquetas HTML
  
echo "<strong>Fecha:</strong> $fecha <br>";//escribimos la fecha del post
  
echo "<strong>Nombre:</strong> $nombre <br>";// escribimos el nombre 
  
echo "<strong>Dedicado a:</strong> $dedicado<br>"// escribimos el destinatario de la dedicatoria 
  
echo "<strong>Comentarios:</strong> $comentario<br>"// escribimos el comentario 
  
echo '<hr align="left" width="35%"35%"><br>'// ponemos la barra separadora 
     

     } 
   echo 
"<a href='#'onclick='Javascript:nuevocoment()' >Solicitar un tema</a>";// escribimos el link para mandar comentarios 
   
?>
Como veran necesitamos una carpeta llamada COMENTARIOS a la cual se le deberá dar los permisos 777.

enviar.php
Código PHP:
<?php
if ($_POST['enviar'])  { // si se apreto el boton "Enviar" ejecutamos el codigo 
  
$archivo ="comentarios/contador.txt"// dicimos donde esta el contador 
  
$abre fopen($archivo"a+"); // lo abrimos 
$total fread($abrefilesize($archivo)); // lo leemos 
  
$code $total1// le sumamos 1 
  
fclose($abre); // y lo cerramos 
  
$fech strftime("%d-%m-%y"time()); // vemos que dia es hoy  
  
$comenta $_POST['comenta'];
  
$dedicado $_POST['dedicado']; // vemos el nombre escrito 
  
if(empty($dedicado)){ // si el campo "Dedicado" esta vacio 
  
$dedic ''// lo dejamos vacio
  

  else
// y si no esta vacio 
  

  
$dedic $_POST['dedicado']; // le damos el nombre que puso 
  
}
  
$nombre $_POST['nombre']; // vemos el nombre escrito 
  
if(empty($nombre)){ // si el campo "Nombre" esta vacio 
  
$us 'Anonimo'// lo llamamos "anonimo"
  

  else
// y si no esta vacio 
  

  
$us $_POST['nombre']; // le damos el nombre que puso 
  
}
   
  
$jiw "comentarios/$code.php";// creamos el archivo 
 
@$aqw fopen($jiw"a+"); // lo abrimos 
  
$sssw "<? 
           \$nombre = '$us'; 
           \$comentario = '$comenta'; 
           \$fecha = '$fech';
           \$dedicado = '$dedic';
           ?> "
;  
 @
$ghjw fwrite($aqw$sssw);  // lo escribimos 
  
fclose($aqw); // lo cerramos 
  
$abrea fopen($archivo"w"); // abrimos el contador 
  
$totala $total 1// sumamos 1 al contador 
  
$grabar fwrite($abrea$totala); // lo escribimos 
  
fclose($abrea); // y lo cerramos 
?>

<body onLoad="setTimeout('window.close()', 2000)"> <!--//CERRAMOS EL POP UP A LOS 2 SEGUNDOS//--> 
<script language="javascript">
opener.location.reload();
</script>
    <table width="306" border="1" cellpadding="2" cellspacing="2" bordercolor="#000000" bgcolor="#FFFFFF" align="center"> 
    <!--DWLayoutTable--> 
    <tr> 
      <td width="306" height="25"><div align="center"><strong>Radio Luna Nueva dice:</strong></div></td> 
    </tr> 
    <tr> 
      <td height="25"><div align="center"><strong>Petici&oacute;n enviada correctamente.</strong></div></td> 
    </tr> 
  </table>

<? 
}else{ 
?> 

<table width="306" height="136" border="1" align="center" cellpadding="2" cellspacing="2" bordercolor="#000000" bgcolor="#FFFFFF"> 
    <!--DWLayoutTable--> 
    <tr> 
      <td width="306" height="25"><div align="center"><strong>Enviar Petici&oacute;n a la Web</strong></div></td> 
    </tr> 
    <tr> 
      <td height="60"><form name="form1" method="post" action="<?=$_SERVER[QUERY_STRING]?>"> 
  <strong>Nombre:</strong><br> 
  <label> 
  <input name="nombre" type="text" id="nombre"> 
  </label> 
  <br>
  <strong>Dedicado a:</strong><br> 
  <label> 
  <input name="dedicado" type="text" id="dedicado"> 
  </label> 
  <br>
  <label><strong>Comentario: 
  </strong><br> 
  <textarea name="comenta" cols="40" rows="7" id="comenta"></textarea>   
  </label> 
 <br><div align="right"> <label>
<input type="reset" name="reset" value="Borrar" class="form">
<input type="submit" name="enviar" value="Enviar" class="form">&nbsp;&nbsp;&nbsp;
  </label> </div>
</form></td> 
    </tr> 
  </table> 

 <? 
?>
Bueno aca no hace falta esplicar, lo que hacemos es chequear el formulario que luego enviara el resultado a index.php.


Ahora lo que me faltaria es:

1.) Como crearle la funcion dnd me ponga el horario del comentario?
2.) Como ordenarlas en forma acendente; quedando la mas reciente arriba de toda?
3.) Como limitar los comentarios en la pagina; o se; que cuando pase los 15 comentarios, este nse cre en una pagina nueva?

Me gustaria que quedara algo asi:

Código HTML:
Fecha: 17/10/2011
Nombre: Alejandro
Dedicado a: un amigo
Comentario: LOREM LOREM LOREM LOREM LOREM LOREM LOREM...

----------------------------------------------------------------
Aunque el orden de como quedaria lo pongo yo de a cuerdo la posicion deseada, pèro quiero que me aparesca el horario, y que los comentarios aparescan ordenada ascendentemente y que limite los comentarios a una nueva pagina (asi como lo hace forosdelweb, en dnd limita los temas a 28 temas por pagina).


GRACIAS