Develop and Download Open Source Software

Browse CVS Repository

Diff of /xoonips/AL/commonal.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.24 by aga, Mon Dec 6 01:45:50 2004 UTC revision 1.25 by youi, Mon Dec 6 07:24:33 2004 UTC
# Line 2  Line 2 
2   *   *
3   * $Revision$   * $Revision$
4   * $Log$   * $Log$
5     * Revision 1.25  2004/12/06 07:24:33  youi
6     * insertAccount, insertGroup:
7     *     新規追加した情報に対応するユーザID,グループIDを第三引数に書き込む.
8     *
9   * Revision 1.24  2004/12/06 01:45:50  aga   * Revision 1.24  2004/12/06 01:45:50  aga
10   * ・コメントつけ.   * ・コメントつけ.
11   * ・開放忘れ修正.   * ・開放忘れ修正.
# Line 511  result_t getAccounts( sessionid_t sid, c Line 515  result_t getAccounts( sessionid_t sid, c
515    
516  /**  /**
517   *   *
518   * アカウント登録   * アカウント登録.
519     * ユーザ情報をデータベースに登録します.
520     * 登録したユーザ情報に対応するユーザIDをuidに格納します.
521   *   *
522   * @param sid セッション   * @param sid セッション
523   * @param account 登録するアカウント情報   * @param account 登録するアカウント情報
524     * @param uid 登録したアカウント情報に対応するユーザID
525   * @return RES_OK   * @return RES_OK
526   * @return RES_NO_SUCH_SESSION   * @return RES_NO_SUCH_SESSION
527   * @return RES_DB_QUERY_ERROR   * @return RES_DB_QUERY_ERROR
528   * @return RES_ERROR   * @return RES_ERROR
529   *   *
530   */   */
531  result_t insertAccount( sessionid_t sid, const account_t* account )  result_t insertAccount( sessionid_t sid, const account_t* account, userid_t* uid )
532  {  {
533      if( mysql == NULL ) return RES_DB_NOT_INITIALIZED;      if( mysql == NULL ) return RES_DB_NOT_INITIALIZED;
534      if( !isValidSessionID( sid ) ) return RES_NO_SUCH_SESSION;      if( !isValidSessionID( sid ) ) return RES_NO_SUCH_SESSION;
# Line 580  result_t insertAccount( sessionid_t sid, Line 587  result_t insertAccount( sessionid_t sid,
587      }      }
588            
589      //ユーザIDを取得する      //ユーザIDを取得する
590      userid_t uid;      *uid = mysql_insert_id( mysql );
     if( getUid( account -> getUname( ), &uid ) != RES_OK ){  
         return RES_ERROR;  
     }  
591            
592      //vpaccountのユーザテーブルに残りの情報を書き込む      //vpaccountのユーザテーブルに残りの情報を書き込む
593      sql = "INSERT INTO " + dbprefix + "_vpaccount_users (uid, activate, address, division, tel, company_name, country, zipcode, fax, base_url, notice_mail, notice_mail_since) VALUES (";      sql = "INSERT INTO " + dbprefix + "_vpaccount_users (uid, activate, address, division, tel, company_name, country, zipcode, fax, base_url, notice_mail, notice_mail_since) VALUES (";
594      snprintf( buf, 12, "%d", uid );      snprintf( buf, 12, "%d", *uid );
595      sql += string( buf ) + ", ";      sql += string( buf ) + ", ";
596      if( account -> getActivate() ){      if( account -> getActivate() ){
597          sql += "1, ";          sql += "1, ";
# Line 611  result_t insertAccount( sessionid_t sid, Line 615  result_t insertAccount( sessionid_t sid,
615          fprintf( stderr, "%d %s\n", mysql_errno(mysql), mysql_error(mysql) );          fprintf( stderr, "%d %s\n", mysql_errno(mysql), mysql_error(mysql) );
616          //xoops_usersへinsertしたレコードを削除する          //xoops_usersへinsertしたレコードを削除する
617          sql = "DELETE FROM " + dbprefix + "_users where uid=";          sql = "DELETE FROM " + dbprefix + "_users where uid=";
618          snprintf( buf, 12, "%d", uid );          snprintf( buf, 12, "%d", *uid );
619          sql += string( buf );          sql += string( buf );
620          mysql_query( mysql, sql.c_str( ) );          mysql_query( mysql, sql.c_str( ) );
621          return RES_DB_QUERY_ERROR;          return RES_DB_QUERY_ERROR;
# Line 1174  result_t deleteGroup( sessionid_t sid, g Line 1178  result_t deleteGroup( sessionid_t sid, g
1178    
1179  /**  /**
1180   *   *
1181   * グループの登録   * グループ登録.
1182     * グループの情報をデータベースに記録します.
1183     * 登録したグループに対応するグループIDをgidに格納します.
1184   *   *
1185   * @param sid セッションID   * @param sid セッションID
1186   * @param group 登録したいグループの情報   * @param group 登録したいグループの情報
1187     * @param gid 登録したグループに対応するグループID
1188   * @return RES_OK   * @return RES_OK
1189   * @return RES_DB_NOT_INITIALIZED   * @return RES_DB_NOT_INITIALIZED
1190   * @return RES_NO_SUCH_SESSION   * @return RES_NO_SUCH_SESSION
1191   * @return RES_DB_QUERY_ERROR   * @return RES_DB_QUERY_ERROR
1192   *   *
1193   */   */
1194  result_t insertGroup( sessionid_t sid, const group_t* group )  result_t insertGroup( sessionid_t sid, const group_t* group, groupid_t* gid )
1195  {  {
1196      if( mysql == NULL ) return RES_DB_NOT_INITIALIZED;      if( mysql == NULL ) return RES_DB_NOT_INITIALIZED;
1197      if( !isValidSessionID( sid ) ) return RES_NO_SUCH_SESSION;      if( !isValidSessionID( sid ) ) return RES_NO_SUCH_SESSION;
# Line 1198  result_t insertGroup( sessionid_t sid, c Line 1205  result_t insertGroup( sessionid_t sid, c
1205          fprintf( stderr, "%d %s\n", mysql_errno(mysql), mysql_error(mysql) );          fprintf( stderr, "%d %s\n", mysql_errno(mysql), mysql_error(mysql) );
1206          return RES_DB_QUERY_ERROR;          return RES_DB_QUERY_ERROR;
1207      }      }
1208        *gid = mysql_insert_id( mysql );
1209      return RES_OK;      return RES_OK;
1210  }  }
1211    

Legend:
Removed from v.1.24  
changed lines
  Added in v.1.25

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26