Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Mysql][PHP] Autouzupełnianie tabel
Forum PHP.pl > Forum > Przedszkole
vbig
Witam!

Chciałbym się dowiedzieć w jaki sposób można wykonać coś, co automatycznie aktualizuje tabele. Tzn. chciałbym w np.2 tabelach zawsze mieć te same dane. Jak zrobić aby dane były uzupełniane?

Chodzi głównie o to, że próbuję stworzyć 2 strony w php-fusion ale żeby wystarczyło zarejestrować się na jednej tongue.gif
Z góry dziękuję za pomoc!
IceManSpy
Przeglądnąć skrypt z rejestracją i dopisać kilka linijek, aby dodało wpis do 2 tabeli.
vbig
http://wklej.org/id/417989/

To jest plik register.php ale niestety za bardzo nie wiem jak się do tego zabrać... Proszę o pomoc smile.gif
CuteOne
Przeczytaj tutoriale o PHP i mysql
vbig
wybacz, ale nie zawęziłeś mojego okręgu poszukiwań... Nie jest mi potrzebna cała wiedza o mysql i php, a dokonanie edycji 300 linijkowego pliku pewnie będzie troche ciężkie... Jest opcja aby ktoś wskazał bądź zawęźlił co mam zedytować czy coś w tym stylu?
IceManSpy
Na pierwszy rzut oka, bez analizy kodu, dodawanie do bazy jest w linijkach 51-52. Więc tam dopisz potrzebne dla Ciebie elementy.
vbig
Zmieniłem to:
  1. $result = dbquery("INSERT INTO ".DB_USERS." (user_name, user_password, user_admin_password, user_email, user_hide_email, user_avatar, user_posts, user_threads, user_joined, user_lastvisit, user_ip, user_rights, user_groups, user_level, user_status".$db_fields.") VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '', '".$user_info['user_email']."', '".$user_info['user_hide_email']."', '', '0', '0', '".time()."', '0', '".USER_IP."', '', '', '101', '$user_status'".$db_values.")");
  2. $result = dbquery("DELETE FROM ".DB_NEW_USERS." WHERE user_code='".$_GET['activate']."'");


Na to:

  1. $result = dbquery("INSERT INTO ".DB_USERS." (user_name, user_password, user_admin_password, user_email, user_hide_email, user_avatar, user_posts, user_threads, user_joined, user_lastvisit, user_ip, user_rights, user_groups, user_level, user_status".$db_fields.") VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '', '".$user_info['user_email']."', '".$user_info['user_hide_email']."', '', '0', '0', '".time()."', '0', '".USER_IP."', '', '', '101', '$user_status'".$db_values.")");
  2. $result = dbquery("INSERT INTO PREFIX_USERS (user_name, user_password, user_admin_password, user_email, user_hide_email, user_avatar, user_posts, user_threads, user_joined, user_lastvisit, user_ip, user_rights, user_groups, user_level, user_status".$db_fields.") VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '', '".$user_info['user_email']."', '".$user_info['user_hide_email']."', '', '0', '0', '".time()."', '0', '".USER_IP."', '', '', '101', '$user_status'".$db_values.")");
  3. $result = dbquery("DELETE FROM ".DB_NEW_USERS." WHERE user_code='".$_GET['activate']."'");
  4. $result = dbquery("DELETE FROM PREFIX_NEW_USERS WHERE user_code='".$_GET['activate']."'");


i niestety do tabeli PREFIX_USERS nic się nie dodaje.
Jakieś pomysły? (Przepraszam, że tak długo ale miałem pewne problemy techniczne z serwerem)
CuteOne
1. Tabela prefix_users znajduje się w tej samej bazie co zdefiniowana DB_USERS?
2. Skopiowałeś tabelę używając odpowiedniego mechanizmu w phpmyadmin?
3. Sprawdź czy nazwy kolumn zgadzają się z tymi w bazie
vbig
1. Tak.
2. Tak.
3. Tak.

Na hostingu mam możliwość prowadzenia tylko jednej bazy przypisanej do konta i obie tabele znajdują się właśnie w niej (strony są subdomenami- od razu powiem żeby nie było że skoro 2 strony to 2 bazy tongue.gif). Wszystkie kolumny zgadzają się.
Ogółem można się zarejestrować, ale wtedy się rejestruje tylko na jednej stronie.
Jakieś pomysły? smile.gif
CuteOne
skoro obie tabele wyglądają tak samo to po co ci klony? nie lepiej dać portal_id [1- portal głowny, 2-jakaś subdomena, 3-jakaś inna subdomena, itd..]
to samo tyczy się innych tabel [tabel clonów]

przy rejestracji sprawdzasz na jakiej domenie użytkownik się rejestruje i wpisujesz do bazy odpowiedni portal_id
przy logowaniu to samo
vbig
Portal główny jest stroną w htmlu która rozsyła do odpowiednich subdomen. Nie potrzebuję mieć na obu stronach tego samego, tylko użytkowników. Poza tym nie wiem jak zrobić to co powyżej przedstawiłeś a metoda dopisywania do 2 tabeli wydaje mi się znacznie mniej skomplikowana tudzież prostsza tongue.gif
CuteOne
no oki jak chcesz ;p wejdź do funkcji dbquery() i dopisz na końcu mysql_query(zapytanie) or die(mysql_error());
vbig
hmmm... chyba nie zrozumiałem tongue.gif
Powinno to wyglądać tak: ?
  1. $result = dbquery("INSERT INTO ".DB_USERS." (user_name, user_password, user_admin_password, user_email, user_hide_email, user_avatar, user_posts, user_threads, user_joined, user_lastvisit, user_ip, user_rights, user_groups, user_level, user_status".$db_fields.") VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '', '".$user_info['user_email']."', '".$user_info['user_hide_email']."', '', '0', '0', '".time()."', '0', '".USER_IP."', '', '', '101', '$user_status'".$db_values.")");
  2. $result = dbquery("INSERT INTO FIREFALL_USERS (user_name, user_password, user_admin_password, user_email, user_hide_email, user_avatar, user_posts, user_threads, user_joined, user_lastvisit, user_ip, user_rights, user_groups, user_level, user_status".$db_fields.") VALUES('".$user_info['user_name']."', '".$user_info['user_password']."', '', '".$user_info['user_email']."', '".$user_info['user_hide_email']."', '', '0', '0', '".time()."', '0', '".USER_IP."', '', '', '101', '$user_status'".$db_values." or die(mysql_error())");
  3. $result = dbquery("DELETE FROM ".DB_NEW_USERS." WHERE user_code='".$_GET['activate']."'");
  4. $result = dbquery("DELETE FROM FIREFALL_NEW_USERS WHERE user_code='".$_GET['activate']."'" or die(mysql_error()));

Jeśli tak to nie działa tongue.gif
CuteOne
NIE... wejdź do funkcji [poszukaj function dbquery()] i tam wstaw to co pisałem wyżej
vbig
niestety nie znalazłem niczego takiego tongue.gif (Sam możesz sprawdzić jak mi nie wierzysz, kod masz w 3 poście)
CuteOne
a inne pliki nie istniejąquestionmark.gif w końcu skądś tą funkcje pobierasz...

ps. zobacz gdzie masz wpisać or die();
vbig
ok, poradziłem sobie winksmiley.jpg Temat można zamknąć!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.