Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Web Money + PHP. Баланс пользователя на сайте.
 
 автор: evgen_17   (24.03.2005 в 22:29)   письмо автору
 
 

Valeri, не могли бы вы объяснить, как это всё сделать? Как заносится, как используется и выводится на кошелёк, сумма на Балансе пользователя.

[поправлено модератором]

   
 
 автор: evgen_17   (24.03.2005 в 22:37)   письмо автору
 
   для: evgen_17   (24.03.2005 в 22:29)
 

И вот ещё вопросик.
Мне нужно, чтобы, если сумма на балансе пользователя равна 0.00 или 0.0 или просто 0, то поступало предложение его пополнить.
Я пишу код:

<?
$user_balance 
mysql_query("SELECT * FROM users WHERE uid='$uid'");
        if(
$user_balance)
            {
                while(
$user mysql_fetch_array($user_balance))
                    {
                        if(
$user['balance'] = '0.00')
                            {
                                echo 
'<p align=center><font color=white><b>'.$uid.', пополните счёт.';
                            include(
INC_DIR_WM."pay.html");
                            }
                    }
            } 


И вот, что получается.

Если у пользователя "User1" баланс равен "0.00", то пишется сообщение "User1, пополните счёт."
И также если у пользователя "User2" баланс равен 1.1, то тоже пишется это сообщение. В чём дело?

Свойвства поля "balance" - FLOAT (10,2) default 0.00

   
 
 автор: evgen_17   (24.03.2005 в 22:59)   письмо автору
 
   для: evgen_17   (24.03.2005 в 22:37)
 

Мда... Что-то проблемы у меня с дробными числами...

   
 
 автор: Valeri   (24.03.2005 в 23:20)   письмо автору
 
   для: evgen_17   (24.03.2005 в 22:59)
 

Все эти действия присходят с работай БД.
У пользователя есть в таблице к примеру user графа balans, если пользователь переводит деньги с ВМ на свой баланс, то с ВМ возвращаются данные по оплате, на тот адрес сайта который указывается в личных настройках кошелька на сайте ВМ(об этом я уже говорил раньше). Значит к примеру файл pay.php, в настройках возвратный адрес http://www.mysite.ru/pay.php на этот файл приходят все данные которые отправляются с ВМ после оплаты, те которые вы указали в форме и обязательные данные, в файле pay.php мы упдатим таблицу user и в графу balans заносим оплаченную сумму, если там уже есть сумма, то значит вначале вытаскиваем эту сумму, прибавляем к ней новый платеж и упдатим balans.
Все, деньги упали на счет пользователя на сайте. В файле pay.php вы можите написать после всех процедур заноса данных что то типа "Ваши деньги успешно занесены на ваш баланс" и еще отправить себе письмо, что пользователь такой-то в такое время, перевел на свой баланс с кошелька такую-то сумму. Можете сделать таблицу куда будут заноситься все трансакции, ну и вообщм тут, как вам ваша фантазия подскажет.
Как таково, деньги перевелись на ваш кошелек и там лежат, но числятся на балансе пользователя. К примеру пользователь покупает на сайте скрипт, процесс покупки я описывать не буду, это у каждого свое, но когда он как бы оплачивает покупку, то опять вытаскивается число из balans, из него высчитывается цена покупки, а остаток снова через упдате заносится в balans. Если пользователь делает покупку у вас, то его деньги хранящиеся на вашем кошельке становятся ваши, если пользователь что то покупает у другого пользователя, значит еще ко всему добавляется процедура прибавления денег к счету продавца, то есть опять вытаскиваем число из balans продавца, прибавляем сумму товара и упдатим balans продавца. Можете с того или другого или с обоих снимать % за сделку, опять как вам подскажет фантазия что надо делать с деньгами пользователей.
Вот вам вся процедура в краце.
Кодом нечего не привожу, так как сдесь надо все рассматривать под конкретный случай, ну а функции обращения к БД я надеюсь вы знаете.
Вывод денег.
Насчет вывода автоматом я сейчас тут так же не буду расписывать, все есть в том ахиве который вы скачивали. Хотя в большинстве случаев автовыводом пользуются мало кто, так как если пользователей много и проходят довольно крупные суммы, то есть много минусов
1. надо на кошельке мертвым грузом хранить довольно приличную сумму
2. так как в этом случае лежат на хосте ключи и пароли от кошелька, то нельзя бть 100% увереным что их не украдут, а значит с ними и деньги с кошелька.
Практически везде даются советы, если вы используете кошелек для работы с переводами на сайте, лучше крупную сумму там не хранить а переводить на другой кошель, а при необходимости переводить обратно. При автовыводе этот вариант практически не реален.
В связи с этим в основном вывод происходит под заказ. Пользователь заказывает сумму на вывод, соответственно проверка, распологает он такой суммой или нет, его заказ заносится в таблицу к примеру zakaz, то есть данные логин, сумма, платежная система, № кошеька для вывода, дата. Так же если есть желание можно отправить себе письмо что пользователь сделал заказ на выплату, и написать любые параметры какие вы считаете нужными.
Я обычно в админке делаю проверку на заказ, тоесть при заходе в админку у меня сразу при заказе появляется красная надпись, "Есть заказы на выплату", перехожу по ней и вижу таблицу со всеми данными. Выплаты осуществляюся в периуд установленный правилами. Проверяю на всякий случай легальность заказа, как этот пользователь заработал и прочее. Если все нормально иду в свой кошелк и перевожу ему деньги. На сайте нажимаю в таблице заказа "олачено", заказ упдатится и становится "Оплачен", пользователю отправляется письмо, что его заказ оплачен деньги переведены.
Вот примерная схема, а уж как вы будете конкретно все делать, это дело каждого.

   
 
 автор: blackdog   (25.03.2005 в 02:23)   письмо автору
 
   для: Valeri   (24.03.2005 в 23:20)
 

--------------------
если там уже есть сумма, то значит вначале вытаскиваем эту сумму, прибавляем к ней новый платеж и упдатим balans
--------------------
не рационально при существовании + в mysql , к примеру update 'balans' set sum=sum+$proplachennischet ;

И вопрос наверное не в тему , Ответить если не трудно в мыло/асю : Какому хостеру можно доверять счета и деньги ?

   
 
 автор: Valeri   (25.03.2005 в 08:08)   письмо автору
 
   для: blackdog   (25.03.2005 в 02:23)
 

только самому себе и своему личному хосту, да и то на 100% нельзя

   
 
 автор: evgen_17   (25.03.2005 в 13:40)   письмо автору
 
   для: Valeri   (25.03.2005 в 08:08)
 

Спасибо, Valeri! А Вашему хосту можно доверить такое? Или вы украдёте? :o)

   
 
 автор: Valeri   (24.03.2005 в 23:24)   письмо автору
 
   для: evgen_17   (24.03.2005 в 22:37)
 

так здесь if($user['balance'] = '0.00') надо писать if($user['balance'] == '0.00')
а то получается что всем присваивается 0.00

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования