免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1032 | 回复: 0
打印 上一主题 下一主题

為何這樣的其怪..!? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-28 06:20 |只看该作者 |倒序浏览
不好意思..因試了很久也得不到結果..
只好在此發問,希望解答..

我是使用 C 連接 MYSQL 的..
連結正確可以取得數值..

可是在將取得的 row[1] 這欄位應該是為整數 2 的 (MYSQL顯示)
在程式當中,將 row[1] 指定給另一變數,不可以使用 online.level = row[1] 指定..
必須改為 online.level = (int)row[1]; 可是這樣得出來的結果就變成了 134680656

希望各位真的可以幫幫忙..解決小弟的問題...

void login {
    MYSQL mysql_conn;
    MYSQL_RES *result;
    MYSQL_ROW row;

    mysql_init(&mysql_conn);

    if (!mysql_real_connect(&mysql_conn,vs("DB_HOST"),vs("DB_ID"),vs("DB_PW"),vs("DB_DB"),0,NULL,0) ) {
        printf("connect mysql fail!!!\n");
        exit(0);
    }

    sprintf(query,"SELECT username, password, level FROM cdb_members WHERE username = '%s' AND password = MD5('%s')",online.id,online.password);

    if (mysql_query(&mysql_conn,query) == 0) { /* Run Query */

        result = mysql_store_result(&mysql_conn);
        row=mysql_fetch_row(result);

        printf("%d",(int)row[2]);exit(0);

        online.isuser=1;
        online.level=row[2];
    }else{
       online.isuser=3;
    }

}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP