Cum să introduceţi un manual de utilizator într-un forum SMF, folosind PHP
Acest exemplu este specifice pentru SMF 1.1.5. Eu nu poate garanta va funcţiona cu orice altă versiune.
Deci, va rula Simple Machine Forum Software-ul şi doriţi să introduceţi un manual de utilizator? Nici o problemă. Ştiu că această problemă se pare foarte specifice, dar a explicat idei de aici pot fi adaptate pentru alte tipuri de forumuri şi alte baze de date conduse de pachete software, cum ar fi Wordpress. Înainte de a ajunge în exact cum se face acest lucru, să aruncăm o privire la cât de simplu de masini Forumuri păstrează de utilizatori. În baza de date SMF acolo este un tabel numit smf_members. Smf_members de structura arata astfel:
| Câmp | Tip | Null | Cheie | Implicit | Extra |
|---|---|---|---|---|---|
| ID_MEMBER | mediumint (8) nesemnate | NU | PRI | NULL | auto_increment |
| memberName | varchar (80) | NU | MUL | ||
| dateRegistered | int (10) nesemnate | NU | MUL | 0 | |
| de posturi | mediumint (8) nesemnate | NU | MUL | 0 | |
| ID_GROUP | smallint (5) nesemnate | NU | MUL | 0 | |
| lngfile | tinytext | NU | MUL | ||
| lastLogin | int (10) nesemnate | NU | MUL | 0 | |
| realname | tinytext | NU | |||
| instantMessages | smallint (5) | NU | 0 | ||
| unreadMessages | smallint (5) | NU | 0 | ||
| buddy_list | de tip text | NU | |||
| pm_ignore_list | de tip text | NU | |||
| messageLabels | de tip text | NU | |||
| passwd | varchar (64) | NU | |||
| emailAddress | tinytext | NU | |||
| personalText | tinytext | NU | |||
| gen | tinyint (4) nesemnate | NU | 0 | ||
| data naşterii | dată | NU | MUL | 0001-01-01 | |
| websiteTitle | tinytext | NU | |||
| websiteUrl | tinytext | NU | |||
| locaţie | tinytext | NU | |||
| ICQ | tinytext | NU | |||
| AIM | varchar (16) | NU | |||
| YIM | varchar (32) | NU | |||
| MSN | tinytext | NU | |||
| hideEmail | tinyint (4) | NU | 0 | ||
| showOnline | tinyint (4) | NU | 1 | ||
| timeFormat | varchar (80) | NU | |||
| semnătura | de tip text | NU | |||
| timeOffset | pluti | NU | 0 | ||
| avatar | tinytext | NU | |||
| pm_email_notify | tinyint (4) | NO | 0 | ||
| karmaBad | smallint (5) nesemnate | NU | 0 | ||
| karmaGood | smallint (5) nesemnate | NU | 0 | ||
| usertitle | tinytext | NU | |||
| notifyAnnouncements | tinyint (4) | NU | 1 | ||
| notifyOnce | tinyint (4) | NU | 1 | ||
| notifySendBody | tinyint (4) | NU | 0 | ||
| notifyTypes | tinyint (4) | NU | 2 | ||
| memberIP | tinytext | NU | |||
| memberIP2 | tinytext | NU | |||
| secretQuestion | tinytext | NU | |||
| secretAnswer | varchar (64) | NU | |||
| ID_THEME | tinyint (4) nesemnate | NU | 0 | ||
| is_activated | tinyint (3) nesemnate | NU | 1 | ||
| validation_code | varchar (10) | NU | |||
| ID_MSG_LAST_VISIT | int (10) nesemnate | NU | 0 | ||
| additionalGroups | tinytext | NU | |||
| smileySet | varchar (48) | NU | |||
| ID_POST_GROUP | smallint (5) nesemnate | NU | MUL | 0 | |
| totalTimeLoggedIn | int (10) nesemnate | NU | 0 | ||
| passwordSalt | varchar (5) | NU |
Domenii trebuie să acorde atenţie:
- memberName - Auto Explanitory.
- dateRegistered - nu este necesar, dar, dacă nu este completat de la data înregistrat ca afişează 31 decembrie 1969. Data este salvată ca o epocă de timp. Nu stiu cum de a calcula timpii in capul tau? Nici o problemă. Pot folosi gratuit generator de găsite aici.
- realname - să fie inserate. Când nu sunt sigur am aici repetarea memberName.
- emailAddress - Auto Explanitory.
- is_activated - Trebuie să fie setat la 1, deoarece noi suntem manual de activare a unui membru.
- ID_POST_GROUP - Eu nu va mint. Nu sunt sigur ce este asta, dar ea pare a fi mereu setat la 4. Deci .... Intotdeauna mi-am stabilit-o la 4. Nu cel mai bun mod de program, dar ce poti face tu?
- passwd - Parola pe care doriţi să daţi de utilizator nou. Este imposibil să-mi dau seama cum să intre fără a uitat la documentatia SMF. Corespunzătoare pentru a cripta un cod SMF parolă pentru baza de date va arăta aşa:
($memberName).$password) $ passwd = sha1 (strtolower ($ memberName). $ parola)
În linia de cod de mai sus, $ parola de utilizator este efectiv al parola.
Cum se face:
/ / În primul rând, conectarea la baza de date SMF
$ host = "hostname"; / / nume de gazdă
$ username = "nume_utilizator"; / / mysql nume de utilizator
$ parola mea = "parola"; / / mysql parola
$ db_name = "nume de utilizator"; / / numele bazei de date
("cannot connect to server"); mysql_connect ( "$ host", "$ username", "$ parola mea") sau a muri ( "nu se poate conecta la server");
("cannot select DB"); mysql_select_db ( "$ db_name") sau a muri ( "nu se poate selecta DB");
memberName $ = "ironMan";
realname $ = "Tony Stark";
emailAddress $ = "ironMan@ironMan.com";
$ is_activated = 1;
ID_POST_GROUP $ = 4;
$ parola = "Tony1234";
($memberName).$password); $ parola = sha1 (strtolower ($ memberName). $ parola);
dateRegistered $ = 1216951200; / / 7-25-2008 2 AM
$ query = "INSERT INTO smf_members (memberName, realname, emailAddress, is_activated, ID_POST_GROUP, passwd, dateRegistered) VALUES ( '$ memberName', '$ realname', '$ emailAddress',' $ is_activated ',' $ ID_POST_GROUP", " $ parola ',' $ dateRegistered ")";
("SMF Error 101.234 "); $ rezultat = mysql_query ($ interogare) sau a muri ( "SMF 101.234 de eroare");
Asta e tot acolo este să-l!






















