Здравствуйте есть вопрос к профессионалам которые имели дело с вм магазином.
Я пишу скрипт WM магазина.
И у меня такой вопрос как организовать историю переводов, покупок, и вообще всей истории связанные с денежным оборотом для админа и продавцов, и т.д
У меня есть таблица где записывается всё касаемо покупок товаров тоесть:
id, id_goods, id_seller , id_agent, id_buy, wmid, purse, mail, key, money, currency, dat, status
но этого мала так как есть другие переводы такие как переводы эксперта, переводы оплаты различных услуг магазина и так далее.,
Вопрос как это всё организовать.
У меня есть мысль создать дополнительную таблицу где всё это будет и отличие будет только в id разных пользователь.
Но стоит ли вписывать все те же поля, что и предыдущий таблице поля и добавлять новые к ней или как то и просто связать между собой и и вытаскивать допустим id товара, маил, id агента. Но на мой взгляд это будет выглядеть не совсем удобно так как нужно будет выполнять много запросов к базе данных.
Вопрос к тому что не хотелось бы писать велосипед, подскажите как лучше сделать.
Что я хочу в писать в таблицу истории.
тип операции, название, дата сумма, комиссия, на счет/со счета, доступны после
а также.
история по операции по товару виде,
номер счёта:
покупатель: WMID:
счёт выписан:
состояние счёта: счёт оплачен и т.д
оплата подтверждена:
Раздел в кантором куплен товар:
оплачено:
зачислено на счёт: (доступны для снятия после кого то числа)
товар:
Такой запросы выполняет действия вычитания 13.7 - 13 вроде всё легко но в при этом в базу данных вписывается результат 0.0699997
И такое происходит с числами 0.05 до 0.09 допустим если такой же запрос выполнить с 13.4 - 13 получится 0.04 как и должно быть.
По чему так и как можно решить эту проблему?
Только прошу не писать типа сначала вычесть данные в переменной а потом уже вставить полученное в базу.
Может стоит выбрать другой тип поля не FLOAT а что то другое?
Может кто то подскажет из своих скриптов как сам решает такие вопросы с вычетанием суммы у пользователей?
Здравствуйте есть функция получения целого числа из суммы.
В ней есть функция eregi () но она выдаёт ошибку так как в 5.3 версии скрипта её уже как я прочитал не используют подскажите чем можно заменить её?
а это возможно? В любом случае отправляются они будут по одной, и не сольются, а вот как вы узнаете из какой формы этот $_POST['mail']? Разве что там есть другие уникальные поля и по ним проверять.
Формы находятся в разных файлах поэтому проверке формы это не мешает и естественно есть другие уникальные поля.
Одновременное нажатия я имел введу разными пользователя на хостинге.
И ли $_POST обрабатывается у каждого пользователя индивидуально в браузере и по этому они не могут ни как слится.
Здравствуйте есть вопрос, есть 2 формы одна
1 Форма авторизации продавцов
2 Форма авторизация покупателей
В обоих формах есть
есть текстовое поле input с именем емайл, вопрос нужно ли задавать этому полю уникальное имя в каждой форме.
То есть
1 форма Емайл name = mail_seller
2 форма Емайл name = mail_buyers
Или в обоих случаях можно просто назвать поле Емайл name = mail
Не сольются ли они в $_POST ['mail'] при одновременном нажатии на разные формы?
И тоже самое касаемо названия СЕССИЙ $_SESSION ['mail']
Можно покопаться в настройках PHP (файл php.ini) (Добавление)
Параметр
session.gc_maxlifetime = 1440
где 1440 количество секунд по истечению которых сессия будет разрушена.
Это не верянт так как у себя на сервере сделать это можно а вот на хостинге вряд ли.
И правильно я понял что без включенных куков сессии работать не будет.
для работы сессии нужны либо куки либо гет-параметры. так как гет-параметры вы вряд ли используете, то по большому счету сессия работать не будет. точнее будет, но для вас эффекта не будет никакого
gheka пишет:
И сессии только нужны чтобы не воровали логин и пароли из куков.
нет. сессии нужны чтобы хранить данные между перезагрузками страниц. так как http протокол работает по принципу запрос-ответ и после забывает обо всем что было. то отличить 2 одинаковых запроса от одного пользователя он никак не может, а думает что это 2 разных пользователя. так вот как раз тут и помогает сессия. она идентифицирует пользователя и на второй запрос уже будет знать что это тот же пользователь, и взависимости от этого можно реализовывать разные функции с роду авторизации и прочего
gheka пишет:
И если куки не включить то авторизоваться нельзя будет?
авторизироваться можно, но ваша авторизация будет длиться до следующего обновления страницы и после вся информация успешно забудется и прийдется авторизироваться снова
Спасибо за разъяснения.
Скажите пожалуйста можно ли как то продлить время жизни сессии.
То есть по умолчанию оно составляет 15 минут можно как то сделать чтобы было допустим 25 минут т.д?
Имеется без перезагрузки страницы так как я знаю что после перезагрузки время обновляется.
вот это вставьте на странице до вывода текста, и кука будет каждый раз обновляться и продлеваться
это метод я пробовал но при этом создается новый кук и получается что их набирается очень много.
Нельзя сделать чтобы просто обновлялось время жизни не создовая при этом новый кук с токим же именем.
И правильно я понял что без включенных куков сессии работать не будет. И сессии только нужны чтобы не воровали логин и пароли из куков.
И если куки не включить то авторизоваться нельзя будет?
Здравствуйте сейчас хотел переписать авторизацию сделанную на COOKIE,
Хочу сделать с применением SESSION
Авторизация работает с SESSION пока включены приём КУКОВ как их отключаешь авторизация не срабатывает.
Заметил что в куках браузера записывается параметр PHPSESSID если его удаляешь этот кук происходит вылет с сайта.
что это такое и как можно обойтись без него.
Неужели СЕССИИ не работают без применения кукок ( COOKIE ).
Ещё вопрос как можно обновить время жизни записанного COOKIE
То есть как в сессиях стандартное время стоит 15 минут при обновлении страницы сесия перезаписывается и время продлевается ещё на 15 минут.
setcookie("hashes","".md5($_POST['password'])."", time () +60*60)
Записана $_COOKIE ['hashes'] на 60 минут как обновить время жизни при обновлении страницы?