работа с две таблици

systems

Registered
Добър вечер искам да попитам следното:

Примерно имам две таблици:
users и users2 при регистрацията се записва имейл адреса на потребителя в users
правя примерно втора система за регистрация която записва данните в users2 и идеята е следната възможно ли е от
users да взема емайла и да го копира в users2.
 
Кажи по-конкретно какво искаш да направиш, за да ти се даде по-добро решение, защото според това, което казваш ще стане двойна работа.
Обясни каква е разликата в двете регистрации и какво пречи да записваш едновременно в двете.
 
Ползвам пхпбб форум но имам и геим сървър които има отделна база с данни
и за двете базите с данни са различни идеята е да си направя втора ситема за регистрация която да работи с втората база с данни но иксам емайла на потребителя и на двете места да е еднакъв затова питам има ли вариянт за това.
 
Еми може да. Въпроса е да имаш достъп до двете база данни едновременно.
Ако са на един сървър е лесно. Когато се изпрати формата за сайта дефакто, то бъркаш в базата данни на форума, взимаш email-a и когато INSERT-ваш в другата база данни използваш взетия email.

Ако дадеш имена на база данни и таблици ще ти дам и примерен код, ако случайно не си ме разбрал какво имам предвид.


ЕДИТ: Ако са на един сървър, то бъркането в отделните база данни става така

[sql]
SELECT email FROM `db_forum`.`table` ...

INSERT INTO `db_site`.`table` ...
[/sql]

Въпроса е на какъв принцип ще разбереш кой запис ти трябва от форума. По username или по какво ?
 
Код:
Въпроса е на какъв принцип ще разбереш кой запис ти трябва от форума. По username или по какво ?

Всъщност като се замисля ще бъде по регистрационен ип адрес.
 
Еми, ако схвана идеята ми и си запознат с езиците, би трябвало да можеш да се справиш. Ако не, дай имена на база данни, таблицата на форума и името на полето за IP и email, както и името на базата данни на сайта и таблицата, пък ти полетата ще си ги оправиш там.

Но имай предвид, че с IP има възможност пак да стане объркване, понеже ако потребителя е с динамично IP и не се регистрира веднага в сайта, а след време, то е възможно да му се е променило IP-то и така няма да можеш да го намериш в базата на форума.
 
Тук си прав но иначе освен по ип се чудя по какво друго може да се прави проверката.
 
Най-лесния начин е следния. Правиш поле за email в регистрационната форма на сайта. След което, взимаш email-a от форума и сравняваш с този от сайта. Ако не съвпадат, можеш да задължиш потребителя да напише същия email,като му изведеш съобщение, че email-a му трябва да съвпада с този от форума, като е хубаво да се сложи предварително предупредително съобщение, което да казва, че желаеш пощите да са еднакви.
 
Ако физически съръра (базата) е един и същи - просто закачи тригери и на трите евънта - insert, update и delete (последния може да е излишен, ако PHPBB не изтрива потребителите физически).
 
Код:
Най-лесния начин е следния. Правиш поле за email в регистрационната форма на сайта. След което, взимаш email-a от форума и сравняваш с този от сайта. Ако не съвпадат, можеш да задължиш потребителя да напише същия email,като му изведеш съобщение, че email-a му трябва да съвпада с този от форума, като е хубаво да се сложи предварително предупредително съобщение, което да казва, че желаеш пощите да са еднакви.

Този вариянт също е добър може ли някакъв пример за сравнение тоест да проверява дали съвпада емайла.
 
Като цяло варианта, който даде @lamerko е добър. Защо не направиш регистрациите едновременно и не ползваш данните от форума. Пък после ти за сайта си ползвай таблиците, които са ти нужни, просто като ти трябват данни за потребителя, ги взимаш от форума.
Пък, ако за сайта в регистрацията имаш по-специфична информация, то си правиш таблица за потребителите, като за ID ще зададеш ID-то на записа от таблицата на форума.
По този начин самата регистрация за сайта можеш да я направиш не точно регистрация, а просто допълване на профила, като пълниш базата данни на сайта.

Като цяло варианти много, въпроса е да ти намерим най-добрия, който ще ти върши работа.
 
Аз успях по друг начин да го направя една регистрация с две инсърт заявки за запис в двете бази с данни и стана благодаря ви на всички за помоща.
 

Back
Горе