stas            Thu May 13 10:19:10 2004 EDT

  Modified files:              
    /php-src/ext/sqlite php_sqlite.h sqlite.c 
  Log:
  add sqlite_exec()
  
  
http://cvs.php.net/diff.php/php-src/ext/sqlite/php_sqlite.h?r1=1.29&r2=1.30&ty=u
Index: php-src/ext/sqlite/php_sqlite.h
diff -u php-src/ext/sqlite/php_sqlite.h:1.29 php-src/ext/sqlite/php_sqlite.h:1.30
--- php-src/ext/sqlite/php_sqlite.h:1.29        Mon Mar  8 13:05:38 2004
+++ php-src/ext/sqlite/php_sqlite.h     Thu May 13 10:19:10 2004
@@ -17,7 +17,7 @@
    |          Marcus Boerger <[EMAIL PROTECTED]>                              |
    +----------------------------------------------------------------------+
 
-   $Id: php_sqlite.h,v 1.29 2004/03/08 18:05:38 helly Exp $ 
+   $Id: php_sqlite.h,v 1.30 2004/05/13 14:19:10 stas Exp $ 
 */
 
 #ifndef PHP_SQLITE_H
@@ -46,6 +46,7 @@
 PHP_FUNCTION(sqlite_popen);
 PHP_FUNCTION(sqlite_close);
 PHP_FUNCTION(sqlite_query);
+PHP_FUNCTION(sqlite_exec);
 PHP_FUNCTION(sqlite_unbuffered_query);
 PHP_FUNCTION(sqlite_array_query);
 PHP_FUNCTION(sqlite_single_query);
http://cvs.php.net/diff.php/php-src/ext/sqlite/sqlite.c?r1=1.143&r2=1.144&ty=u
Index: php-src/ext/sqlite/sqlite.c
diff -u php-src/ext/sqlite/sqlite.c:1.143 php-src/ext/sqlite/sqlite.c:1.144
--- php-src/ext/sqlite/sqlite.c:1.143   Wed May 12 06:15:46 2004
+++ php-src/ext/sqlite/sqlite.c Thu May 13 10:19:10 2004
@@ -17,7 +17,7 @@
    |          Marcus Boerger <[EMAIL PROTECTED]>                              |
    +----------------------------------------------------------------------+
 
-   $Id: sqlite.c,v 1.143 2004/05/12 10:15:46 helly Exp $ 
+   $Id: sqlite.c,v 1.144 2004/05/13 14:19:10 stas Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -157,6 +157,7 @@
        PHP_FE(sqlite_popen, third_arg_force_ref)
        PHP_FE(sqlite_close, NULL)
        PHP_FE(sqlite_query, NULL)
+       PHP_FE(sqlite_exec, NULL)
        PHP_FE(sqlite_array_query, NULL)
        PHP_FE(sqlite_single_query, NULL)
        PHP_FE(sqlite_fetch_array, NULL)
@@ -198,6 +199,7 @@
        PHP_ME_MAPPING(__construct, sqlite_open, NULL)
 /*     PHP_ME_MAPPING(close, sqlite_close, NULL)*/
        PHP_ME_MAPPING(query, sqlite_query, NULL)
+       PHP_ME_MAPPING(queryExec, sqlite_exec, NULL)
        PHP_ME_MAPPING(arrayQuery, sqlite_array_query, NULL)
        PHP_ME_MAPPING(singleQuery, sqlite_single_query, NULL)
        PHP_ME_MAPPING(unbufferedQuery, sqlite_unbuffered_query, NULL)
@@ -1069,7 +1071,7 @@
 {
        php_info_print_table_start();
        php_info_print_table_header(2, "SQLite support", "enabled");
-       php_info_print_table_row(2, "PECL Module version", PHP_SQLITE_MODULE_VERSION " 
$Id: sqlite.c,v 1.143 2004/05/12 10:15:46 helly Exp $");
+       php_info_print_table_row(2, "PECL Module version", PHP_SQLITE_MODULE_VERSION " 
$Id: sqlite.c,v 1.144 2004/05/13 14:19:10 stas Exp $");
        php_info_print_table_row(2, "SQLite Library", sqlite_libversion());
        php_info_print_table_row(2, "SQLite Encoding", sqlite_libencoding());
        php_info_print_table_end();
@@ -1676,6 +1678,45 @@
 }
 /* }}} */
 
+/* {{{ proto boolean sqlite_exec(string query, resource db)
+   Executes a result-less query against a given database */
+PHP_FUNCTION(sqlite_exec)
+{
+       zval *zdb;
+       struct php_sqlite_db *db;
+       char *sql;
+       long sql_len;
+       char *errtext = NULL;
+       zval *object = getThis();
+
+       if (object) {
+               if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", 
&sql, &sql_len)) {
+                       return;
+               }
+               DB_FROM_OBJECT(db, object);
+       } else {
+               if(FAILURE == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET,
+                       ZEND_NUM_ARGS() TSRMLS_CC, "sr", &sql, &sql_len, &zdb) && 
+                  FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", 
&zdb, &sql, &sql_len)) {
+                       return;
+               }
+               DB_FROM_ZVAL(db, &zdb);
+       }
+       
+       PHP_SQLITE_EMPTY_QUERY;
+
+       db->last_err_code = sqlite_exec(db->db, sql, NULL, NULL, &errtext);
+
+       if (db->last_err_code != SQLITE_OK) {
+               php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", errtext);
+               sqlite_freemem(errtext);
+               RETURN_FALSE;
+       }
+
+       RETURN_TRUE;
+}
+/* }}} */
+
 /* {{{ php_sqlite_fetch_array */
 static void php_sqlite_fetch_array(struct php_sqlite_result *res, int mode, zend_bool 
decode_binary, int move_next, zval *return_value TSRMLS_DC)
 {

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to