[PHP_DEV] PHP + mysql4 compilation

From: Date: Mon, 29 Oct 2001 18:01:52 +0000
Subject: [PHP_DEV] PHP + mysql4 compilation
Groups: php.dev 
Request: Send a blank email to php-dev+get-69286@lists.php.net to get a copy of this message
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

« previous php.dev (#69286) next »