Regresar a la página www.ComoCrearTuWeb.com
Resultados 1 al 7 de 7

Tema: sacarlos 10 resultados de la tabla

  1. #1
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    05 mar, 10
    Mensajes
    844
    Poder de Reputación
    21

    sacarlos 10 resultados de la tabla

    como sacar los 10 resultados mas votados de la tabla

    Código PHP:
    <?php 
    // conectar con la db
    include "";
    // seleccionamos la tb
    $data mysql_query("SELECT * FROM tabla ORDER BY id") or die(mysql_error());

    //pasamos los datos por un bucle while 
    while($ratings mysql_fetch_array$data )) { 
    //Esto genera las url
    echo "<ul>"
    echo 
    "<li>" .$ratings['url']."</li>";
    echo 
    "</ul>";
    }
    ?>
    Última edición por francisco1; 25/09/2012 a las 12:08

  2. #2
    Me va gustando esto... Habitante Avatar de SuperHipo
    Fecha de Ingreso
    21 sep, 11
    Ubicación
    Sevilla
    Mensajes
    143
    Poder de Reputación
    15
    Hola francisco. ¿Dónde estás limitando que el número de resultados sea 10? En principio esto debería sacar todos los resultados de la tabla, no sólo los 10 más votados.

    Perdona si me equivoco pero no veo el límite por ningún lado.

    Un saludo!
    Programación y Diseño Web Freelance

  3. #3
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    05 mar, 10
    Mensajes
    844
    Poder de Reputación
    21
    Cita Iniciado por SuperHipo Ver Mensaje
    Hola francisco. ¿Dónde estás limitando que el número de resultados sea 10? En principio esto debería sacar todos los resultados de la tabla, no sólo los 10 más votados.

    Perdona si me equivoco pero no veo el límite por ningún lado.

    Un saludo!
    Hola SuperHipo si tienes razon pero esa no es mi pregunta mi pregunta es como sacar los 10 resultados mas votados de la tabla tiene que aver algun codigo sentencia etc que ejerza ese control

    cambio este
    $data = mysql_query("SELECT * FROM tabla ORDER BY id") or die(mysql_error());
    por este
    $data = mysql_query("SELECT * FROM mi_tabla ORDER BY id ASC LIMIT 10") or die(mysql_error());

    Código PHP:
    <?php 
    // conectar con la db
    include "";
    // seleccionamos la tb
    $data mysql_query("SELECT * FROM mi_tabla ORDER BY id ASC LIMIT 10") or die(mysql_error());

    //pasamos los datos por un bucle while 
    while($ratings mysql_fetch_array$data )) { 
    //Esto genera las url
    echo "<ul>"
    echo 
    "<li>" .$ratings['url']."</li>";
    echo 
    "</ul>";
    }
    ?>
    un saludo

  4. #4
    Esto empieza a ser un vicio... Habitante Avatar de spitfire2
    Fecha de Ingreso
    04 sep, 10
    Ubicación
    ARGENTINA...!!!
    Mensajes
    736
    Poder de Reputación
    19
    si, tienes que cambiar el


    Código PHP:
    order by id asc LIMIT 10 
    por:
    Código PHP:
     order by votos desc  LIMIT 10 
    (pero tienes que tener un campo "votos" con la cantidad de votos recibidos )

    ...muestrame como esta armada tu tabla

  5. #5
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    05 mar, 10
    Mensajes
    844
    Poder de Reputación
    21
    Gracias Spitfire 2 vasta con camviar solo el campo en el query
    ------
    mi tabla
    ------
    CREATE TABLE vote (
    id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(30) NOT NULL,
    total INTEGER NOT NULL,
    votes INTEGER NOT NULL,
    url VARCHAR(250) NOT NULL
    )
    ----------------------------------
    el total INTEGER ES INT(11)
    el votes INTEGER ES INT(11)
    cotejamiento utf8_spanish_ci
    ----------------------------------
    formulario de insercion de tipos en id pongo en cada insercion un 1 2 3 siguiente 4 etc
    ----------------------------------
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>formulario</title>
    <meta name="robots" content="noindex"/>
    <style type="text/css">
    /*<=!=[=C=D=A=T=A=[*/
    body {
    background-color: #808000;
    }
    div.c1 {text-align: center}
    /*]=]=>*/
    </style>
    </head>
    <body>
    <div class="c1">
    <br />
    <form method="post" action="http://matarratos.tk/votaciones/insertardatosentabla.php">
    <input type="text" name="id" value=
    "id" size="80" maxlength=
    "5" />
    <input type="text"name="name" value=
    "name" size="80" maxlength=
    "145" /><br />
    <input type="text" name="total" value=
    "total" size="total" maxlength=
    "6" />
    <input type="text" name="votes" value=
    "votes" size="80" maxlength=
    "6" />
    <input type="text" name="url" value=
    "url" size="80" maxlength=
    "250" />
    <input type="SUBMIT" value="Enviar" name=
    "Enviar la informaci&oacute;n al servidor" /><br />
    </form>
    </div>
    </body>
    </html>
    -----------------------------------------------
    variables de envio del formulario al INSERT
    ------------------------------------------------
    <?php echo $_POST[id];
    ?><br />
    <?php echo $_POST[name];
    ?><br />
    <?php echo $_POST[total];
    ?><br />
    <?php echo $_POST[votes];
    ?><br />
    <?php echo $_POST[url];
    ?>
    --------------------------------------------------
    isertar los tipos desde el formulario en la tabla
    --------------------------------------------------
    @mysql_query ("INSERT INTO vote ( `id`, `name`, `total`, `votes`, `url`) VALUES ('$_POST[id]', '$_POST[name]', '$_POST[total]', '$_POST[votes]', '$_POST[url]')");
    ---------------------------------------------------
    codigo para crear los votos y devolverlos a la web
    ----------------------------------------------------------------------------
    //este codigo primero estava asi pero era todo para la misma id
    $data = mysql_query("SELECT * FROM mi tabla") or
    //yo lo puse asi para diferentes id, WHERE id = '1' WHERE id = '2' WHERE id = 'etc'
    $data = mysql_query("SELECT * FROM mi tabla WHERE id = '1' ORDER BY ID") or die(mysql_error());
    ----------------------------------------------------------------------------
    Código PHP:
    <?php 
    // conectar con la db
    include "config.php";
    // seleccionamos la tb
    $data mysql_query("SELECT * FROM mi tabla WHERE id = '1' ORDER BY id") or die(mysql_error());
    //Sólo se ejecuta este código si el usuario ha hecho clic en un enlace de votación 
    if ( $mode=="vote") {  
    //Si el usuario ya ha votado en lo particular, no se les permite votar de nuevo  
    $cookie "MySite $id";
    if(isset(
    $_COOKIE[$cookie])) { 
    echo 
    "Usted ya a votado para este juego<p>"
    }  
    //De lo contrario, les decimos que ya han votado 
    else { 
    $month 2592000 time(); 
    $cookie(Mysite.$idVoted$month); 
    //Luego actualizamos la información sobre la votación mediante la adición 1 al total de los votos y la adición de su voto (1,2,3, etc) para la calificación total 
    mysql_query ("UPDATE vote SET total = total+$voted, votes = votes+1 WHERE id '1' = $id"); 
    echo 
    "Su voto ha sido emitido <p>"


    //pasamos los datos por un bucle while 
    while($ratings mysql_fetch_array$data )) { 
    //Esto genera el nombre de los que votan entre comillas 
    echo "Juego: " .$ratings['name']."<br>"
    //Esto calcula el ranking de los que votan y luego lo devuelve redondeado a un decimal  
    $current $ratings[total] / $ratings[votes]; 
    echo 
    "Votos: " round($current1) . "<br>"
    //formulario Vota este juego:
    echo "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=1&id=".$ratings[id].">1</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=2&id=".$ratings[id].">2</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=3&id=".$ratings[id].">3</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=4&id=".$ratings[id].">4</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=5&id=".$ratings[id].">5</a> | ";
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=6&id=".$ratings[id].">6</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=7&id=".$ratings[id].">7</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=8&id=".$ratings[id].">8</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=9&id=".$ratings[id].">9</a> | "
    echo 
    "<a href=".$_SERVER['PHP_SELF']."?mode=vote&voted=10&id=".$ratings[id].">10</a><p>";

    ?>
    este post esta relacionado con este
    http://www.comocreartuweb.com/consul...044#post289044
    por eso lo pongo todo el codigo aqui
    y el codigo para sacar los 10 mas votados deve salir de el campo total
    pero solo quiero sacr la url para ponerlo en el menu lateral mas votados y tamvien necesitare sacar del mismo tipo los mas jugados creo que necesitare hacer otro campo enla tabla vote, tipo, jugados

    y el codigo que me diste Spitfire quedaria asi

    Código PHP:
    <?php 
    // conectar con la db
    include "";
    // seleccionamos la tb
    $data mysql_query("SELECT * FROM mi_tabla ORDER BY votes ASC LIMIT 10") or die(mysql_error());

    //pasamos los datos por un bucle while 
    while($ratings mysql_fetch_array$data )) { 
    //Esto genera las url
    echo "<ul>"
    echo 
    "<li>" .$ratings['url']."</li>";
    echo 
    "</ul>";
    }
    ?>
    tipo1 id ' 1' tipo 2 id '2' etc en la tabla vote un id para cada pagina juego para la votacion
    pero necesitaria tamvien sacar el un primer juego id '1'
    segundo juego id '2'

    de momento no me funciona bien aver si me puedes ayudar
    cuando te dije que antes funcionava pero le cambie unas cosas y ya no funciona le cambie unas cosas porque funciona pero no del todo bien todos los juegos y paginas dava los mismos votos el codigo estava siempre en la misma id un saludo
    Última edición por francisco1; 26/09/2012 a las 19:14

  6. #6
    Esto empieza a ser un vicio... Habitante Avatar de spitfire2
    Fecha de Ingreso
    04 sep, 10
    Ubicación
    ARGENTINA...!!!
    Mensajes
    736
    Poder de Reputación
    19
    a ver si entiendo:
    quieres mostrar una lista con los 10 juegos mas votados y que se muestre su url con un enlace para llevar al visitante a ese juego?
    Código PHP:

    $data 
    =" SELECT * FROM vote ORDER BY votes desc LIMIT 10";// cambie asc por desc para que te muestre primero los que tienen mas votos
    $result=mysql_query($data);
    //pasamos los datos por un bucle while 
    while($ratings mysql_fetch_object$result )) { 
    $url=$ratings->url;
    $tit=$ratings->name;//nombre del juego
    $vot=$ratings->votes;//cantidad de votos
    //Esto genera las url
    echo "<ul>"
    echo 
    "<li><a href='$url'>$tit ($vot)</a></li>";//tenes que armar esto segun como guardes la url, por ejemplo( archivo.php/juego-de-guerra.html o  www.tusitio.com/archivo.php?id=5 etc...)
    echo "</ul>";

    creo que eso tendria que funcionar

  7. #7
    Esto empieza a ser un vicio... Habitante
    Fecha de Ingreso
    05 mar, 10
    Mensajes
    844
    Poder de Reputación
    21
    Gracias Spitfire ya solucione casi todo
    con esto ya me vale
    Código PHP:
    order by votos desc  LIMIT 10 
    un saludo

Temas Similares

  1. Formularios que muestran resultados
    Por Facundo3500 en el foro Formularios
    Respuestas: 3
    Último Mensaje: 15/01/2010, 19:54
  2. Resultados busqueda
    Por kimapa en el foro Posicionamiento de páginas web
    Respuestas: 6
    Último Mensaje: 29/01/2009, 09:01
  3. resultados de pie diferentes
    Por ROYGES en el foro Curso Paso a Paso con Html-Kit.
    Respuestas: 2
    Último Mensaje: 17/06/2008, 17:11

Permisos de Publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •