手動で挿入する方法をユーザーには、 SMFのフォーラムにPHPを使う
この具体例1.1.5 SMFのです。 私は他のバージョンで動作することを保証することはできません。
だから、簡単な機械フォーラムソフトウェアを実行し、ユーザーが手動で入力するか? 大丈夫。 私はこの問題を非常に具体的だが、知っているのアイデアはここWordpressのフォーラムや他のデータベースなどのソフトウェアパッケージ駆動の他のタイプに適応させることができると説明した。 この操作を実行する前に、正確にどのようになる、シンプルなマシンを取る方法についてのフォーラムのユーザーの追跡を見てみよう。 は、 SMFのデータベースには、テーブルと呼ばれていますsmf_members 。 構造smf_membersこのようなものです:
| 競技場 | 種類 | ヌル | 鍵 | 債務不履行 | エキストラ |
|---|---|---|---|---|---|
| ID_MEMBER | はMEDIUMINT ( 8 )符号なし | なし | PRIに | NULLを | AUTO_INCREMENTの |
| memberName | はvarchar ( 80 ) | なし | MUL | ||
| dateRegistered | 内科( 10 )符号なし | なし | MUL | 0 | |
| ポスト | はMEDIUMINT ( 8 )符号なし | なし | MUL | 0 | |
| ID_GROUP | のsmallint ( 5 )符号なし | なし | MUL | 0 | |
| lngfile | tinytext | なし | MUL | ||
| lastLogin | 内科( 10 )符号なし | なし | MUL | 0 | |
| realnameの | tinytext | なし | |||
| instantMessages | のsmallint ( 5 ) | なし | 0 | ||
| unreadMessages | のsmallint ( 5 ) | なし | 0 | ||
| buddy_list | テキスト | なし | |||
| pm_ignore_list | テキスト | なし | |||
| messageLabels | テキスト | なし | |||
| passwdの | はvarchar ( 64 ) | なし | |||
| メールアドレス | tinytext | なし | |||
| personalText | tinytext | なし | |||
| 性 | はTINYINT ( 4 )符号なし | なし | 0 | ||
| 生年月日 | 日付 | なし | MUL | 0001-01-01 | |
| websiteTitle | tinytext | なし | |||
| websiteUrl | tinytext | なし | |||
| 場所 | tinytext | なし | |||
| アイシーキュー | tinytext | なし | |||
| AIMの | はvarchar ( 16 ) | なし | |||
| イム | はvarchar ( 32 ) | なし | |||
| MSNの | tinytext | なし | |||
| hideEmail | はTINYINT ( 4 ) | なし | 0 | ||
| showOnline | はTINYINT ( 4 ) | なし | 1 | ||
| timeFormat | はvarchar ( 80 ) | なし | |||
| 署名 | テキスト | なし | |||
| timeOffset | フロート | なし | 0 | ||
| アバター | tinytext | なし | |||
| pm_email_notify | はTINYINT ( 4 ) | なし | 0 | ||
| karmaBad | のsmallint ( 5 )符号なし | なし | 0 | ||
| karmaGood | のsmallint ( 5 )符号なし | なし | 0 | ||
| usertitle | tinytext | なし | |||
| notifyAnnouncements | はTINYINT ( 4 ) | なし | 1 | ||
| notifyOnce | はTINYINT ( 4 ) | なし | 1 | ||
| notifySendBody | はTINYINT ( 4 ) | なし | 0 | ||
| notifyTypes | はTINYINT ( 4 ) | なし | 2 | ||
| memberIP | tinytext | なし | |||
| memberIP2 | tinytext | なし | |||
| secretQuestion | tinytext | なし | |||
| secretAnswer | はvarchar ( 64 ) | なし | |||
| ID_THEME | はTINYINT ( 4 )符号なし | なし | 0 | ||
| is_activated | はTINYINT ( 3 )署名のない | なし | 1 | ||
| validation_code | はvarchar ( 10 ) | なし | |||
| ID_MSG_LAST_VISIT | 内科( 10 )符号なし | なし | 0 | ||
| additionalGroups | tinytext | なし | |||
| smileySet | はvarchar ( 48 ) | なし | |||
| ID_POST_GROUP | のsmallint ( 5 )符号なし | なし | MUL | 0 | |
| totalTimeLoggedIn | 内科( 10 )符号なし | なし | 0 | ||
| passwordSalt | varchar型( 5 ) | なし |
フィールド私たちに注意を払う必要があります:
- memberName -自己E xplanitory。
- dateRegistered -が必要とされていない場合は、日付を1 969年1 2月3 1日として表示されます登録に記入されていません。 タイムスタンプの日付をエポックとして保存されます。 あなたの頭の中でどのようにタイムスタンプを計算するのか分からないですか? 大丈夫。 私はここが見つかりました、フリー発生器を使用します。
- realnameを-挿入される必要があります。 ときに私はここにmemberNameを繰り返すのか分からない 。
- メールアドレス-自己E xplanitory。
- メンバーを活性化されますので、手動 is_activated -1に設定する必要があります。
- ID_POST_GROUP -私はうそをつくことはありません。 私はこの何なのか分かりませんが、常に4に設定しているようだ。 だから... 。 私はいつも4に設定します。 プログラムにしない最善の方法はどうするの?
- passwdの-場合は、新しいユーザーのパスワードを付与する。 それは、 SMFのマニュアルを見ないで入力してくださいを理解することは不可能です。 適切なコードは、データベース用のSMFのパスワードを暗号化するためにこのようなものです:
($memberName).$password) $ passwdの= SHA1を ( strtolower ( $ memberName ) 。 $パスワード)
コードの上の行では、 $パスワードは、ユーザーの実際のパスワードです。
その方法を:
/ /まず、 SMFのデータベースに接続
$ホスト= "ホスト名" ; / /ホスト名
$ユーザ名= "ユーザー名" ; / / MySQLユーザ名
$ mypassword = "パスワード" ; / / mysqlのパスワード
$ db_name = "ユーザー名" ; / /データベース名
("cannot connect to server"); "ホスト( " $ mysql_connect 、 " $ユーザ名" 、 " $ mypassword "は)または死ぬ ( "サーバーに" )を接続することはできません。
("cannot select DB"); mysql_select_db ( " $ db_name " ) または死ぬ ( " " ) DBを選択することはできません。
$ memberName = "アイアンマン" ;
$ realnameを= "トニースターク" ;
$メールアドレス= " ironMan@ironMan.com " ;
$ = 1 is_activated ;
$ ID_POST_GROUP = 4 ;
$パスワード= " Tony1234 " ;
($memberName).$password); $パスワード= SHA1を ( strtolower ( $ memberName ) 。 $パスワード) ;
$ = 1216951200 dateRegistered ; / / 2008年7月25日午前2時
$クエリ= "に挿入、 、 ' $ 'メールアドレス、 ' $ ' is_activated 、 ' $ realnameの' ' $ memberName ' ( 、 、メールアドレス、 ID_POST_GROUP 、 dateRegistered passwdのis_activated realnameの) memberName値( ' $ smf_members ID_POST_GROUP ' 、 ' $パスワード' 、 ' $ dateRegistered ' ) " ;
("SMF Error 101.234 "); $結果= するmysql_query ( $クエリ) または死ぬ ( " SMFのエラー101.234 " ) ;
は、すべての設定は完了です!






















