Страница 3 из 8

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 04 фев 2011, 00:03
Александр
Sasha

Код: Выделить всё

SELECT * FROM `'.$table_name.'` WHERE `uid`='ОПРЕДЕЛЕННЫЙ ID';

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 04 фев 2011, 17:12
Sasha
спасибо, а вот если у меня есть переменная содержащая id пользователя это так записывается :

Код: Выделить всё

'SELECT * FROM `'.$table_name.'` WHERE `uid`=$viewer_id';

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 05 фев 2011, 14:34
Александр
Sasha

Код: Выделить всё

'SELECT * FROM `'.$table_name.'` WHERE `uid`='.$viewer_id;
Чтобы проверить какой у тебя получается запрос, просто выводи его и смотри (echo).

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 10 фев 2011, 20:30
-O-J-A-
Вопрос таков: как реализовать для строки, к примеру score, что бы при при следующем запросе записывался результат если он больше предыдущего.
То есть: у игрока 100 очков, он набрал 80, нужно чтобы 100 не заменилось на 80.

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 11 фев 2011, 20:52
Nick Lisogor

Код: Выделить всё

<?php$db_host="localhost";       //Хост$db_user="root";        //Имя пользователя$db_password="pass";        //Пароль$db_name = "database";      //Имя базы данных$table_name = "table";       //Имя таблицы статистики  //Скорее всего, твои очки тоже привязаны к id пользователя, поэтому нужно отправлять его в скрипт$viewer_id = (int)$_POST['viewer_id']; //Это последние набранные пользователем очки$last_points = (int)$_POST['last_points'];     //Соединяемся с БД    mysql_connect($db_host, $db_user, $db_password);    mysql_select_db($db_name);    mysql_query("SET NAMES 'utf8'");     //Есть ли такой ИД в БД, возвращает 0 или 1 так, как больше 1 пользователя с одинаковым ИД не будет    $get_id_from_db = mysql_query("SELECT count(*) FROM `$table_name` WHERE `название_столбца_с_id_пользователя`='$viewer_id'");    $num_id_from_db = mysql_result($get_id_from_db,0);     //Если такой пользователь есть    if($num_id_from_db==1)    {      //Узнаем его предыдущие очки       $get_points = mysql_query("SELECT `название_столбца_с_рекордом_пользователя` FROM `$table_name` WHERE `название_столбца_с_id_пользователя`='$viewer_id'");      $latest_points = mysql_result($get_points,0);       //И если они меньше, чем новые      if($last_points>$latest_points){        //Обновляем их новыми        $query = 'UPDATE `'.$table_name.'` SET `название_столбца_с_рекордом_пользователя` = '.$last_points.' WHERE `название_столбца_с_id_пользователя` = '.$viewer_id.';';      }       else       {        //Если же нет, то просто выходим из скрипта        exit;      }    }    //Отправляем запрос в БД    $sql = mysql_query($query);    echo "OK";?>
Писал недавно, пробуй

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 06 апр 2011, 20:50
Foxmen
Спасибо за урок.

А вы не подскажете как вывести случайный id?

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 06 апр 2011, 21:19
Александр
Foxmen
Выбрать из базы количество записей, в php сгенерировать случайное число от 1 до количества записей и выбрать из базы значение по этому случайному id.
ORDER BY RAND() лучше не использовать. С большой базой будет медленно работать.

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 07 апр 2011, 13:55
Foxmen
почитал про ORDER BY BAND действительно от него только хуже.
Буду вашим методом пользоваться.
Со случайным числом и выводом не будет проблем я думаю, а вот как узнать количество записей в столбце uid?

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 07 апр 2011, 14:21
Александр
Foxmen писал(а):как узнать количество записей в столбце uid
выполнить запрос

Код: Выделить всё

SELECT COUNT(*) FROM TABLE

Re: Вывод данных из базы (PHP + MySQL)

Добавлено: 22 июн 2011, 18:42
maksimn
Александр, а как сделать чтобы выводились данные по двум полям? Например, нужно вывести пользователя с определенным именем и фамилией:

Код: Выделить всё

 $query = 'SELECT * FROM `stat` WHERE `last_name`= "Павел";`last_name`= "Дуров";';