Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Dr [F] en 21 Junio 2011, 02:09 am



Título: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 02:09 am
hola foro, les vengo con una consulta, estoy intentando montar un sistema de puntos en mi web, esta consta con una base de datos llamada muro, aca les dejo el code (Mysql)

Código
Código
  1. CREATE TABLE muro(
  2. id INT UNSIGNED,
  3. usuario VARCHAR(30) NOT NULL,
  4. post VARCHAR(255) NOT NULL,
  5. fecha datetime UNSIGNED,
  6. megusta INT UNSIGNED,
  7. PRIMARY KEY(id)
  8. );


y el code problematico es este


Código
Código
  1. <?php
  2.  
  3. $text = $_REQUEST['publicar'];
  4. $replace = '@(<script>| onload | onerror | )@';
  5. include("Consultas/conectar.php");
  6. $url_actual = "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
  7. if($url_actual=="http://localhost/UPLOAD/menu.php") {
  8.  
  9. $quer = mysql_query("SELECT id,usuario,post,fecha from muro order by id desc",$conexion);
  10. while($querr = mysql_fetch_array($quer)) {
  11. $numero = strlen($querr['usuario']);
  12.  
  13. echo "<br><div id=down>";
  14.  
  15. echo "<img src=imagenes/imagendefault.png></img>";
  16. echo  "<a href=http://localhost/UPLOAD/perfiles/$querr[usuario].php>";
  17. echo "&nbsp;";
  18. echo $querr['usuario'].":";
  19. echo "<br></a>";
  20. for($i=0;$i<$numero;$i++) {
  21. echo "&nbsp;&nbsp;";
  22. }
  23. $fa = $querr['post'];
  24. $post = preg_replace($replace,' ',$fa);
  25.  
  26.  
  27. echo $post;
  28. $id = $querr['id'];
  29.  
  30.  
  31. echo "<br><br>";
  32.  
  33. echo "<div id=fan3>";
  34.  
  35. echo $querr['fecha'];
  36. echo "<form method=post action=$url_actual>";
  37. echo "<input type=submit value=+1 name=megusta>";
  38. echo "<input type=submit value=-1 name=nomegusta>";
  39.  
  40.  
  41. echo "</form>";
  42.  
  43. echo "<br>";
  44.  
  45.  
  46. echo "</div>";
  47.  
  48. echo "<br><hr>";
  49.  
  50. }
  51. }
  52. if(isset($_REQUEST['megusta'])) {
  53. mysql_query("UPDATE muro set megusta=23 where id=$id",$conexion);
  54. }

el problema es que siempre me inserta el valor de me gusta en id=1 de la tabla... alguien sabe que estoy haciendo mal ? muchas gracias


Título: Re: Ayuda con base de datos
Publicado por: Shell Root en 21 Junio 2011, 02:22 am
jajaja y que es lo que quieres hacer?


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 02:26 am
creo que lo que quiero hacer esta claro, que no entendeS ?


Título: Re: Ayuda con base de datos
Publicado por: EFEX en 21 Junio 2011, 02:31 am
Código
  1. mysql_query("UPDATE muro set megusta=23 where id=$id",$conexion);
  2.  

Proba cambiandolo por:

Código
  1. mysql_query("UPDATE muro SET megusta='23' WHERE id='$id'",$conexion);
  2.  


Título: Re: Ayuda con base de datos
Publicado por: Shell Root en 21 Junio 2011, 02:37 am
1. No se lo que está haciendo, creo que un sistema de votaciones, de la pagina o las publicaciones?
2. No tienes porque mostrar todo el código, sólo muestra la parte en la que realizas el conteo. -Supongo que sabes cual es-.

@EFEX, da igual, es lo mismo tener...

Código
  1. UPDATE tipoUsuario SET estado = 0 WHERE( id = 1 );
qué
Código
  1. UPDATE tipoUsuario SET estado = '0' WHERE( id = '1' );


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 02:37 am
ya lo probe antes, pero tampoco funciona, siempre le da el valor 1 porque es el primer valor que toma, probe metiendolo dentro del for tambien, pero a todos les da el valor de 23 :/


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 02:38 am
shell, ese no es todo el codigo, es la parte que causa problemas, nada mas :)


Título: Re: Ayuda con base de datos
Publicado por: Shell Root en 21 Junio 2011, 02:53 am
A ver, se supone que un sistema de votos, tiene que hacer lo siguiente como básico...

Tener un link o botón, -lo que sea-, esté deberá de realizar la siguiente acción... Consultar el total actual de votos e incrementarlo en 1. Donde haces esto?


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 02:57 am
ese es el problema no lo se hacer porque a cada posteo quiero que le den un diferente voto, pero cuando tocan el boton para votar no se almacena en la db :/


Título: Re: Ayuda con base de datos
Publicado por: Shell Root en 21 Junio 2011, 03:14 am
Pero como lo tienes? O quieres que lo hagamos?


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 03:38 am
Código
  1. <?php
  2.  
  3. $text = $_REQUEST['publicar'];
  4. $replace = '@(<script>| onload | onerror | )@';
  5. include("Consultas/conectar.php");
  6. $url_actual = "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
  7. if($url_actual=="http://localhost/UPLOAD/menu.php") {
  8.  
  9. $quer = mysql_query("SELECT id,usuario,post,fecha from muro order by id desc",$conexion);
  10.  
  11. while($querr = mysql_fetch_array($quer)) {
  12. $numero = strlen($querr['usuario']);
  13.  
  14. echo "<br><div id=down>";
  15.  
  16. echo "<img src=imagenes/imagendefault.png></img>";
  17. echo  "<a href=http://localhost/UPLOAD/perfiles/$querr[usuario].php>";
  18. echo "&nbsp;";
  19. echo $querr['usuario'].":";
  20. echo "<br></a>";
  21. for($i=0;$i<$numero;$i++) {
  22. echo "&nbsp;&nbsp;";
  23. }
  24. $fa = $querr['post'];
  25. $post = preg_replace($replace,' ',$fa);
  26.  
  27.  
  28. echo $post;
  29. $id = $querr['id'];
  30. echo "<br><br>";
  31.  
  32. echo "<div id=fan3>";
  33.  
  34. echo $querr['fecha'];
  35.  
  36.  
  37. echo "<a href=$url_actual?id=$id><input type=button value=+1></a>";
  38.  
  39.  
  40.  
  41.  
  42.  
  43. echo "</form>";
  44. echo "<br>";
  45. echo "</div>";
  46. echo "<br><hr>";
  47.  
  48. }   // CIERRO WHILE
  49. $la = $_GET['id'];
  50. $s = explode("=",$la) ;
  51. $ss = $s[1];
  52. mysql_query("UPDATE muro set megusta=2 where id=$ss",$conexion);
  53. }   // CIERRO IF


ACA CONSEGUI TENER LA ID DE CADA POST, el problema es que nose que falla que no se actualiza en la BD :/

:S


Título: Re: Ayuda con base de datos
Publicado por: Dr [F] en 21 Junio 2011, 04:58 am
SOLUCIONADO gracias !  :D


Título: Re: Ayuda con base de datos
Publicado por: Shell Root en 21 Junio 2011, 06:19 am
Poned la solución.