Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/12/2014, 15:46
panxolda20
 
Fecha de Ingreso: diciembre-2014
Mensajes: 2
Antigüedad: 10 años
Puntos: 0
Respuesta: programar boton me gusta en php y ajax por favor colaborar

aca esta el index
estoy viendo como creo un me gusta , que cuente los click y que pase a estado despues ya no me gusta
lo mismo que hace facebook , si pueden ayudarme seria genial gracias :)
Código PHP:
Ver original
  1. <?php
  2. ini_set("display_errors",0);
  3. include('operaciones/publicacion.class.php');//
  4. include('operaciones/comentario.class.php'); //esto es php
  5. $obj_publicaciones = new publicacion();// se crea obj ...
  6. $obj_comentario = new comentario();
  7.  
  8. $var_publicaciones=$obj_publicaciones->obtienePublicacionesUsuario('1');
  9. $var_cantidad_publicaciones=count($var_publicaciones);
  10. ?>
  11. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  12. <html xmlns="http://www.w3.org/1999/xhtml">
  13. <head>
  14. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><link rel="stylesheet" type="text/css" href="css/principal.css"/>
  15. <title>Facebook</title>
  16. </head>
  17.  
  18. <body>
  19. <div class="portada-encabezado"><img src="img/logo-transparente.png" width="36" height="37" /></div>*
  20. <div class="portada-contenedor-izq">izquierda</div>
  21. <div class="portada-contenedor-centro">
  22. <?php for($i=0;$i<$var_cantidad_publicaciones;$i++){?>// for de la publicaciones
  23. <?php
  24. $var_id_publicacion_usuario = $var_publicaciones[$i][0];//  indice  0, 0   asi esta se puede mofidicar $1,$1 el de abajo = esta relacionado  con esto
  25. $var_comentarios=$obj_comentario->obtieneComentariosPublicacion($var_id_publicacion_usuario);
  26. $var_cantidad_comentarios=count($var_comentarios) ;?>// cuentra cuentos filas tiene el arreglo  el count  es para iteracion
  27. <div class="portada-publicacion">
  28. <div class="publicacion-encabezado-imagen">
  29. <img src="img/img_ejemplo_perfil.jpg" width="56" height="56" /></div>
  30. <div class="publicacion-encabezado-texto">
  31. Felipe Alejandro Silva
  32. </div>
  33. <div class="publicacion-encabezado-fecha">
  34. Ayer a las 9:54
  35. </div>
  36. <div class="publicacion-contenido"><?php echo utf8_encode($var_publicaciones[$i][1]);?></div>// mostrar las publicaciones
  37. <div class="publicacion-links"><a href="#">Me gusta</a> - <a href="#">Comentar</a> - <a href="#">Compartir</a></div>
  38. <div class="comentarios">
  39. <div id="muestra-comentarios-<?php echo $var_id_publicacion_usuario;?>"  >
  40. <?php
  41.  
  42. for($j=0;$j<$var_cantidad_comentarios;$j++){?>  // estructura for de comentarios va generar comentarios mientra comentario tenga
  43. <div  class="comentario-individual">
  44. <div class="comentario-imagen" ><img src="img/img_ejemplo_perfil.jpg" alt="" width="24" height="24" /></div>
  45. <div class="comentario-nombre"><?php echo $var_comentarios[$j][2];?> </div>
  46. <div class="comentario-texto" ><?php echo $var_comentarios[$j][0];?></div>
  47. <div  class="comentario-fecha" ><?php echo $var_comentarios[$j][1];?></div>
  48. </div>
  49. <?php };?>
  50. </div>
  51. <img src="img/img_ejemplo_perfil.jpg" alt="" width="24" height="24" />// caja de texto
  52.   <input name="txt_comentario_<?php echo $var_id_publicacion_usuario;?>" type="text" id="txt_comentario_<?php echo $var_id_publicacion_usuario;?>" size="100" placeholder="Escribe un comentario..." onblur="enviaComentario(<?php echo $var_id_publicacion_usuario;?>);"/>
  53. </div>
  54. </div>
  55.  
  56. <?php };?></div>
  57. <div class="portada-contenedor-der">derecha</div>
  58. <script language="javascript" src="jquery/jquery-1.11.1.min.js"></script>
  59. <script language="javascript">
  60. function enviaComentario(id_publicacion){ // aca envio envia comentario  
  61. var comentario = document.getElementById('txt_comentario_'+id_publicacion).value; // voy asignar  o voy buscar al caja de texto que tenga el id y lo estoy asignando en comentario
  62. loadContent('comentarios/agregar_comentario.php','muestra-comentarios-'+id_publicacion,'txt_comentario='+comentario+'&id_publicacion_usuario='+id_publicacion);
  63. }
  64. function loadContent(url, destino, qs) {
  65.  
  66.  
  67.     var spinner = "<span class='spinner'>&nbsp;<img src='img/loading_facebook.gif' width='160' height='24' alt='Cargando' /> </span>";
  68.     var destino = jQuery('#'+destino);
  69.     destino.html(spinner);
  70.    
  71.     jQuery.ajax({
  72.         type:"get",
  73.         url:url,
  74.         dataType:'html',
  75.         data: qs,
  76.         cache:false,
  77.         timeout:30000,
  78.         error:function(xhr, ts, et){
  79.             alert("Error al cargar la pagina");
  80.             destino.html('');
  81.         },
  82.         success:function(data, ts){
  83.             window.setTimeout(function(){
  84.                     destino.html('');
  85.                     destino.html(data);
  86.                 }, 500);
  87.         }
  88.     });
  89. }</script>
  90. </body>
  91. </html>

y aca clase comentario
Código HTML:
Ver original
  1. <?php
  2. class publicacion
  3. {
  4.     /*A modo de ejemplo se obtienen las publicaciones del propio usuario. Debe considerar según el contexto las propias y de amigos.*/
  5. function obtienePublicacionesUsuario($usuario){
  6.     $var_usuario = $usuario;
  7.     include("conexion/mysql.inc.php");
  8.    
  9.     $consulta_publicaciones ="select pu.id_publicacion_usuario,p.publicacion,p.fecha_publicacion from publicacion p,publicacion_usuario pu
  10.     where
  11.     p.id_publicacion=pu.id_publicacion and
  12.     pu.id_usuario='$var_usuario' order by p.fecha_publicacion";
  13.     $resultado = $mysqli->query($consulta_publicaciones);
  14.     $i=0;
  15.     while($fila = $resultado->fetch_assoc()){
  16.            
  17.     $arreglo[$i]=array($fila['id_publicacion_usuario'],$fila['publicacion'],$fila['fecha_publicacion']);
  18.     $i++;
  19. }
  20.         return $arreglo;
  21. }
  22.  
  23. }
  24. ?>