Kako se ručno Umetni Korisničke u SMF Forum Koristeći PHP
Ovaj primjer je specifičan za SMF 1.1.5. I ne može jamčiti da će raditi sa bilo koje druge verzije.
Zato što pokrenete Simple Machine Forum Software i želite ručno unijeti korisnik? Nema problema. Znam taj problem izgleda vrlo specifičan, ali ideja je objašnjeno ovdje se može prilagoditi druge vrste forume database driven i drugih programskih paketa kao što su Wordpress. Prije nego što se upravo u tome, Let's pogledajte kako Simple Machine Forume vodi evidenciju o korisnicima. U SMF baza nalazi se tablica zove smf_members. The smf_members struktura izgleda ovako:
| Polje | Vrsta | Null | Ključ | Zadano | Extra |
|---|---|---|---|---|---|
| ID_MEMBER | mediumint (8) nepotpisan | NE | Pri | NULL | auto_increment |
| memberName | varchar (80) | NE | MUL | ||
| dateRegistered | int (10) nepotpisan | NE | MUL | 0 | |
| postovi | mediumint (8) nepotpisan | NE | MUL | 0 | |
| ID_GROUP | smallint (5) nepotpisan | NE | MUL | 0 | |
| lngfile | tinytext | NE | MUL | ||
| lastLogin | int (10) nepotpisan | NE | MUL | 0 | |
| realname | tinytext | NE | |||
| instantMessages | smallint (5) | NE | 0 | ||
| unreadMessages | smallint (5) | NE | 0 | ||
| buddy_list | text | NE | |||
| pm_ignore_list | text | NE | |||
| messageLabels | text | NE | |||
| passwd | varchar (64) | NE | |||
| emailAddress | tinytext | NE | |||
| personalText | tinytext | NE | |||
| spol | tinyint (4) nepotpisan | NE | 0 | ||
| Datum rođenja | datum | NE | MUL | 0001-01-01 | |
| websiteTitle | tinytext | NE | |||
| websiteUrl | tinytext | NE | |||
| mjesto | tinytext | NE | |||
| ICQ | tinytext | NE | |||
| AIM | varchar (16) | NE | |||
| YIM | varchar (32) | NE | |||
| MSN | tinytext | NE | |||
| hideEmail | tinyint (4) | NE | 0 | ||
| showOnline | tinyint (4) | NE | 1 | ||
| timeFormat | varchar (80) | NE | |||
| potpis | text | NE | |||
| timeOffset | splavariti | NE | 0 | ||
| avatar | tinytext | NE | |||
| pm_email_notify | tinyint (4) | NE | 0 | ||
| karmaBad | smallint (5) nepotpisan | NE | 0 | ||
| karmaGood | smallint (5) nepotpisan | NE | 0 | ||
| usertitle | tinytext | NE | |||
| notifyAnnouncements | tinyint (4) | NE | 1 | ||
| notifyOnce | tinyint (4) | NE | 1 | ||
| notifySendBody | tinyint (4) | NE | 0 | ||
| notifyTypes | tinyint (4) | NE | 2 | ||
| memberIP | tinytext | NE | |||
| memberIP2 | tinytext | NE | |||
| secretQuestion | tinytext | NE | |||
| secretAnswer | varchar (64) | NE | |||
| ID_THEME | tinyint (4) nepotpisan | NE | 0 | ||
| is_activated | tinyint (3) nepotpisan | NE | 1 | ||
| validation_code | varchar (10) | NE | |||
| ID_MSG_LAST_VISIT | int (10) nepotpisan | NE | 0 | ||
| additionalGroups | tinytext | NE | |||
| smileySet | varchar (48) | NE | |||
| ID_POST_GROUP | smallint (5) nepotpisan | NE | MUL | 0 | |
| totalTimeLoggedIn | int (10) nepotpisan | NE | 0 | ||
| passwordSalt | varchar (5) | NE |
Polja koja treba obratiti pozornost na:
- memberName - Samopomoć Explanitory.
- dateRegistered - nije potrebno, ali ako ne ispunjenih datum registrirani prikazuje kao 31. prosinac 1969. Datum je spremljen kao vremensku epohu. Ne znam kako izračunati timestamps u tvoju glavu? Nema problema. Koristim slobodan generator naći ovdje.
- realname - treba umetnuti. Kad nisam siguran sam ponoviti memberName ovdje.
- emailAddress - Samopomoć Explanitory.
- is_activated - mora biti postavljena na 1 jer smo ručno aktivirati član.
- ID_POST_GROUP - neću lagati. Im 'ne siguran što je ovo, ali to uvijek izgleda kao da se podesiti na 4. Dakle .... Uvijek sam ga do 4. Nije najbolji način da se program, ali ono što mogu učiniti?
- passwd - The lozinku želite dati novi korisnik. Nemoguće je shvatiti kako unijeti bez pogledati SMF dokumentaciju. Odgovarajući broj jedan za šifriranje SMF lozinku za bazu podataka izgleda ovako:
($memberName).$password) $ passwd = sha1 (strtolower ($ memberName). $ lozinka)
U gornji redak koda, $ password je stvarni korisnik lozinka.
Kako ćete to učiniti:
/ / Prvo spajanje na bazu podataka SMF
$ host = "hostname"; / / host name
$ username = "username", / / mysql username
$ MojaLozinka = "lozinka"; / / mysql password
$ db_name = "username", / / Database ime
("cannot connect to server"); mysql_connect ( "host $", "$ username", "$ MojaLozinka") ili umrijeti ( "ne može spojiti na poslužitelj");
("cannot select DB"); mysql_select_db ( "$ db_name") ili die ( "ne mogu odabrati DB");
$ memberName = "Ironman";
$ realname = "Tony ukočen";
$ emailAddress = "ironMan@ironMan.com";
$ is_activated = 1;
$ ID_POST_GROUP = 4;
$ password = "Tony1234";
($memberName).$password); $ password = sha1 (strtolower ($ memberName). $ password);
$ dateRegistered = 1216951200; / / 7/25/2008 2
$ query = "INSERT NA smf_members (memberName, realname, emailAddress, is_activated, ID_POST_GROUP, passwd, dateRegistered) vrijednosti ( '$ memberName', '$ realname', '$ emailAddress',' $ is_activated ',' $ ID_POST_GROUP ',' $ password ',' $ dateRegistered ') ";
("SMF Error 101.234 "); $ rezultat = mysql_query ($ query) ili die ( "Greška SMF 101,234");
To je sve što je na njega!






















