За последние 24 часа нас посетили 56905 программистов и 1794 робота. Сейчас ищут 890 программистов ...

случайная выборка из базы данных!

Тема в разделе "PHP и базы данных", создана пользователем kolya7774, 10 мар 2011.

  1. kolya7774

    kolya7774 Активный пользователь

    С нами с:
    3 мар 2011
    Сообщения:
    98
    Симпатии:
    0
    Привет, помогите, пожалуйста, сделать случайную выборку из данных (то есть хочу чтобы при каждой перезагрузке страницы менялась картинка, которая защищает от спама).
    Есть таблица в базе и в ней 3 поля:
    1. ID
    2. IMG
    3. SUM (то, что на картинке)

    Я написал вот так:
    $result4 = mysql_query ("SELECT img FROM comments_setting ORDER BY rand()", $db);
    $myrow4 = mysql_fetch_array ($result4);

    <form action="comment.php" method="post" name="comment">
    <p><img src="<?php echo $myrow4 ["img"]; ?>" alt="" width="122" height="40" /> <input style="position:absolute;margin-top:9px; margin-left:10px;" name="pr" type="text" size="5" maxlength="5" /></p><br />

    А в обработчике (comment.php):
    $result = mysql_query ("SELECT sum FROM comments_setting WHERE sum=$pr", $db);
    $myrow = mysql_fetch_array ($result);
    if ($pr == $myrow ['sum'])
    {...}
     
  2. neverlose

    neverlose Активный пользователь

    С нами с:
    27 авг 2008
    Сообщения:
    1.112
    Симпатии:
    20
    ORDER BY RAND()
     
  3. Inject

    Inject Активный пользователь

    С нами с:
    3 апр 2011
    Сообщения:
    24
    Симпатии:
    0
    <?php
    $limit['limit']='1'; //сколько обработать записей сразу, по 1.
    for($i=1;$i<=$limit['limit'];$i++)
    {
    $a=mysql_query("SELECT img FROM comments_setting", $db) or die (mysql_error());
    while($с=mysql_fetch_array($a)){$img[]=$с['img'];}
    shuffle($img);
    $rand=$img[rand(0,count($img)+1)];
    }
    ?>

    что то вроде этого...
     
  4. titch

    titch Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    847
    Симпатии:
    0
    тебе все каптчи нужны одновременно?... а как же LIMIT в SQL-запросе?