MySQL | Прочитать данные

Программирование, которое не связано с API.
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

MySQL | Прочитать данные

Сообщение ukhov »

Данные:

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

$hostname = "127.0.0.1";$username = "flapps_user";$password = "flapps_password";$dbName = "flapps_base";$userstable = "flapps_table";MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу создать соединение ");@mysql_select_db("$dbName") or die("Не могу выбрать базу данных ");
Таблица flapps_table выглядит так:

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

 user_id          user_balance1234543          756 
Теперь вопрос:
Как прочитать user_balance через user_id?
Аватара пользователя
BaCo
Сообщения: 76
Зарегистрирован: 28 дек 2010, 11:48

Re: MySQL | Прочитать данные

Сообщение BaCo »

$sql = mysql_query("SELECT `user_balance` FROM `flapps_table` WHERE `user_id` = '1234543';");
$balance = mysql_result($sql, 0);
Вроде так.
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Прочитать данные

Сообщение ukhov »

BaCo
Большое спасибо!!! А как теперь отредактировать баланс? Т.е. внести значение "$new_balance"?

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

<?php$hostname = "127.0.0.1";$username = "u1476588_default";$password = "(пароль)";$dbName = "u1476588_default";$userstable = "forum_cash_amt";MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу создать соединение ");@mysql_select_db("$dbName") or die("Не могу выбрать базу данных "); $sql = mysql_query("SELECT `cash_amt` FROM `forum_cash_amt` WHERE `user_id` = '2';");$balance = mysql_result($sql, 0);$bonus = '3';$new_balance = bcadd($balance, $bonus);echo("$balance");?>
Аватара пользователя
BaCo
Сообщения: 76
Зарегистрирован: 28 дек 2010, 11:48

Re: MySQL | Прочитать данные

Сообщение BaCo »

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

$sql = @mysql_query("UPDATE `cash_amt` SET `balance` = '".$new_balance."' WHERE `user_id` = '".$user_id."';");
Это если задавать баланс.

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

$sql = @mysql_query("UPDATE `cash_amt` SET `balance` = `balance` + '".$new_balance."' WHERE `user_id` = '".$user_id."';");
Это если прибавить к текущему.
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Прочитать данные

Сообщение ukhov »

Первый вопрос
Как узнать, зарегистрирован ли счёт у пользователя 1234543? Т.е. указано ли значение "user_balance" у пользователя 1234543?
Если есть - то

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

echo('Счёт данного пользователя зарегистрирован');
Если нет - то

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

echo('Счёт данного пользователя не зарегистрирован');
Второй вопрос
Как узнать, есть ли пользователь 1234543 в базе? Т.е. есть ли в столбце user_id значение 1234543?
Если есть - то

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

echo('Пользователь зарегистрирован');
Если нет - то

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

echo('Пользователь не зарегистрирован');
Аватара пользователя
Deniska
Сообщения: 653
Зарегистрирован: 30 окт 2009, 00:07

Re: MySQL | Прочитать данные

Сообщение Deniska »

Ответ на 1-ый вопрос
Для этого в базе введи учёт денег на счету пользователя. Далее подобно как описанно внизу выводи.

Ответ на 2-ый вопрос

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

SELECT * FROM `'.$table_name.'` WHERE `uid`='ОПРЕДЕЛЕННЫЙ ID';
Далее смотри на echo.
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Прочитать данные

Сообщение ukhov »

Deniska писал(а):Ответ на 1-ый вопрос
Для этого в базе введи учёт денег на счету пользователя. Далее подобно как описанно внизу выводи.

Ответ на 2-ый вопрос

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

SELECT * FROM `'.$table_name.'` WHERE `uid`='ОПРЕДЕЛЕННЫЙ ID';
Далее смотри на echo.
:?:
Как второе решить? Чтобы написало, что пользователь зарегистрирован, или не зарегистрирован.
Аватара пользователя
BaCo
Сообщения: 76
Зарегистрирован: 28 дек 2010, 11:48

Re: MySQL | Прочитать данные

Сообщение BaCo »

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

if(mysql_num_rows(mysql_query("SELECT * FROM `'.$table_name.'` WHERE `uid`='ОПРЕДЕЛЕННЫЙ ID';"))) {   echo("да");} else {   echo("нет");}
Аватара пользователя
ukhov
Модератор
Модератор
Сообщения: 1343
Зарегистрирован: 04 янв 2011, 21:19

Re: MySQL | Прочитать данные

Сообщение ukhov »

Всё работает, кроме одного - при чтении данных, записанных на русском, пишет "????????? (и т.д.)". В phpMyAdmin смотрел, кодировка нормально. А как при чтении её указать?
Аватара пользователя
BaCo
Сообщения: 76
Зарегистрирован: 28 дек 2010, 11:48

Re: MySQL | Прочитать данные

Сообщение BaCo »

Попробуй после подключения к базе сделать так:

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

@mysql_query("SET CHARACTER SET 'utf8'");
или так:

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

@mysql_query("SET CHARACTER SET 'windows-1251'");
а еще может и так :D :

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

@mysql_query("SET CHARACTER SET 'windows1251'");
Ответить