Ver Mensaje Individual
  #5 (permalink)  
Antiguo 16/01/2014, 08:38
Avatar de rodrypaladin
rodrypaladin
Moderador
 
Fecha de Ingreso: abril-2010
Ubicación: Madrid
Mensajes: 2.127
Antigüedad: 14 años
Puntos: 468
Respuesta: Buscar en BD y mostrar esa fila

He avanzado algo más. He insertado también otra parte del script, aunque no se finalizarla.

Lo que he realizado ahora es que puedes votar a un personaje, al votarlo se añade a la base de datos, ahora lo que intento realizar es que. en el caso de que el personaje ya exista, en vez de añadirlo de nuevo, simplemente se le sume 1 al numero de votos.

Vuelvo a pegar mi código:

Código PHP:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="es">
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Ranking el más odiado</title>
  6.  
  7. <style type="text/css">
  8. body            { font-family: Arial, Verdana, Sans; font-size: 14px; }
  9. table.tabla-bd      { border-right:1px solid #ccc; border-bottom:1px solid #ccc; }
  10. table.tabla-bd th   { background:#eee; padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
  11. table.tabla-bd td   { padding:5px; border-left:1px solid #ccc; border-top:1px solid #ccc; }
  12. .cabecera {
  13.     background-color:#DDD;
  14.        font-family:Helvetica,Futura,Arial,Verdana,sans-serif;
  15.        border: 1px dotted rgb(221, 221, 221);
  16.          border-left: 1px hidden;
  17.         border-right: 1px hidden; }
  18. </style>
  19.  
  20. </head>
  21. <body>
  22.  
  23. <?php
  24. $conexion = mysql_connect("XXX.XXX.XXX" , "XXXXXXX" , "XXXXXXX");
  25. mysql_select_db("XXXXXXXX",$conexion);
  26.  
  27. ?>
  28.  
  29.  
  30. <div align="center">
  31. Escribe el nombre del personaje publico que MAS ODIAS, <br>
  32. si este no esta en nuestro ranking se añadira, <br>
  33. pero si ya esta se le sumara el voto <br>
  34. <br>
  35. <form align="center" action="index.php" method="post">
  36. <input type="text" size="50" name="votar" value="A quien odias mas" /> <input type="submit" value="Vota"/>
  37. </form>
  38. <br>
  39.  
  40. <?php
  41. if ($_POST["votar"]) {
  42.     $dato = mysql_real_escape_string(strip_tags($_POST["votar"]));
  43.     $votonuevo = $_POST['votar'];
  44.     $sql = "INSERT INTO elmasodiado(nombre, votos) VALUES ('$votonuevo','1')";
  45.     $result = mysql_query($sql);
  46.     echo 'Has votado a '. $votonuevo . 'como tu personaje MAS ODIADO';
  47.         }
  48. ?>
  49.  
  50. <div align="center">
  51. <br>
  52. <br>
  53. <div align="center">
  54. <form align="center" action="index.php" method="post">
  55. <input type="text" size="30" name="buscar" value="Busca un personaje" /> <input type="submit" value="Buscar"/>
  56. </form>
  57. <br>
  58. <div align="center">
  59.  
  60.  
  61.  
  62. <table class=borde  align="center">
  63. <tr class="cabecera">
  64.   <td  align=left>Nombre</td>
  65.   <td  align=center>Votos</td>
  66. </tr>
  67. <?php
  68.  
  69. if ($_POST["buscar"]) {
  70.         $dato = mysql_real_escape_string(strip_tags($_POST["buscar"])); // si hemos recogido un dato del formulario _POST
  71.      
  72.         $consulta = sprintf("SELECT * FROM elmasodiado WHERE nombre = '%s' ORDER BY votos DESC", $dato); // buscamos la consulta
  73.         $result = mysql_query($consulta);
  74.      
  75.         //Siempre verifica que se hayan obtenido datos en la consulta
  76.         if (mysql_num_rows($result)) {
  77.             while($fila = mysql_fetch_array($result)) {
  78.                 $numero = 0;
  79.                 echo "<tr>";
  80.                 echo "  <td align=left>" . $fila['nombre'] . "</td>";
  81.                 echo "  <td align=center>" . $fila['votos'] . "</td>";
  82.                 echo "</tr>";
  83.                 $numero++;
  84.             }
  85.         }
  86.         else
  87.             echo "No se encontraron datos en la consulta";
  88.     }
  89.     else {
  90.         $sql= "SELECT * FROM elmasodiado ORDER BY votos DESC";
  91.         $result = mysql_query($sql);
  92.      
  93.         //Siempre verifica que se hayan obtenido datos en la consulta
  94.         if (mysql_num_rows($result)) {
  95.             while($fila = mysql_fetch_array($result)) {
  96.                 $numero = 0;
  97.                 echo "<tr>";
  98.                 echo "  <td align=left>".$fila['nombre']."</td>";
  99.                 echo "  <td align=center>".$fila['votos']."</td>";
  100.                 echo "</tr>";
  101.                 $numero++;
  102.             }
  103.         }
  104.         else
  105.             echo "No se encontraron datos en la consulta";
  106.     }
  107.      
  108. ?>
  109. </table>
Intentaré buscarlo por mi cuenta también si no encuentro respuesta por aquí, Gracias!!!

EDITO: Acabo de ver que tengo que usar UPDATE para ello, veré si encuentro algún ejemplo que me haga ver claro como se usa!!
__________________
No te olvides de dar +1 a quien te echa un cable ;)

Última edición por rodrypaladin; 16/01/2014 a las 08:45