Note, please, that C API in mysql has changed. So, create_db and drop_db
are gone. See a kind of workaround below.
Thanx!

For create_db function in ext/mysql/php_mysql.c:
--------------------------------
        int id;
#if MYSQL_VERSION_ID > 39999
        char buff[80];
#endif
        php_mysql_conn *mysql;
        MySLS_FETCH();

        switch(ZEND_NUM_ARGS()) {
                case 1:
                        if (zend_get_parameters_ex(1, &db)==FAILURE) {
                                RETURN_FALSE;
                        }
                        id = 
php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU MySLS_CC);
                        CHECK_LINK(id);
                        break;
                case 2:
                        if (zend_get_parameters_ex(2, &db, &mysql_link)==FAILURE) {
                                RETURN_FALSE;
                        }
                        id = -1;
                        break;
                default:
                        WRONG_PARAM_COUNT;
                        break;
        }

        ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, mysql_link, id, "MySQL-Link", 
le_link, le_plink);

        convert_to_string_ex(db);
#if MYSQL_VERSION_ID < 40000
        if (mysql_create_db(&mysql->conn, (*db)->value.str.val)==0) {
                RETURN_TRUE;
        } else {
                RETURN_FALSE;
        }
#else
        if((*db)->value.str.len > 64) {
                RETURN_FALSE;
        }
        sprintf(buff,"CREATE DATABASE %s",(*db)->value.str.val);
        if (mysql_query(&mysql->conn, buff)!=0) {
                RETURN_FALSE;
        } else {
                RETURN_TRUE;
        }
#endif

-------------------
And the same with drop DB:

#if MYSQL_VERSION_ID < 40000
        convert_to_string_ex(db);
        if (mysql_drop_db(&mysql->conn, (*db)->value.str.val)==0) {
                RETURN_TRUE;
        } else {
                RETURN_FALSE;
        }
#else
        if((*db)->value.str.len > 64) {
                RETURN_FALSE;
        }
        sprintf(buff,"DROP DATABASE %s",(*db)->value.str.val);
        if (mysql_query(&mysql->conn, buff)!=0) {
                RETURN_FALSE;
        } else {
                RETURN_TRUE;
        }
#endif



-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to