* needing to use these functions a lot, you might experience time outs. If you
* do, then it is advised to just write the SQL code yourself.
*
- * You can turn debugging on, by setting $debug to 1 after you include this
- * file.
- *
- * <code>
- * check_column('wp_links', 'link_description', 'mediumtext');
- * if (check_column($wpdb->comments, 'comment_author', 'tinytext'))
- * echo "ok\n";
- *
- * $error_count = 0;
- * $tablename = $wpdb->links;
- * // check the column
- * if (!check_column($wpdb->links, 'link_description', 'varchar(255)')) {
- * $ddl = "ALTER TABLE $wpdb->links MODIFY COLUMN link_description varchar(255) NOT NULL DEFAULT '' ";
- * $q = $wpdb->query($ddl);
- * }
- *
- * if (check_column($wpdb->links, 'link_description', 'varchar(255)')) {
- * $res .= $tablename . ' - ok <br />';
- * } else {
- * $res .= 'There was a problem with ' . $tablename . '<br />';
- * ++$error_count;
- * }
- * </code>
+ * check_column( 'wp_links', 'link_description', 'mediumtext' );
+ * if ( check_column( $wpdb->comments, 'comment_author', 'tinytext' ) ) {
+ * echo "ok\n";
+ * }
+ *
+ * $error_count = 0;
+ * $tablename = $wpdb->links;
+ * // Check the column.
+ * if ( ! check_column($wpdb->links, 'link_description', 'varchar( 255 )' ) ) {
+ * $ddl = "ALTER TABLE $wpdb->links MODIFY COLUMN link_description varchar(255) NOT NULL DEFAULT '' ";
+ * $q = $wpdb->query( $ddl );
+ * }
+ *
+ * if ( check_column( $wpdb->links, 'link_description', 'varchar( 255 )' ) ) {
+ * $res .= $tablename . ' - ok <br />';
+ * } else {
+ * $res .= 'There was a problem with ' . $tablename . '<br />';
+ * ++$error_count;
+ * }
*
* @package WordPress
* @subpackage Plugin
*/
-/**
- * @global bool $wp_only_load_config
- * @name $wp_only_load_config
- * @var bool
- * @since unknown
- */
-$wp_only_load_config = true;
-
/** Load WordPress Bootstrap */
require_once(dirname(dirname(__FILE__)).'/wp-load.php');
-/**
- * Turn debugging on or off.
- * @global bool|int $debug
- * @name $debug
- * @var bool|int
- * @since unknown
- */
-$debug = 0;
-
if ( ! function_exists('maybe_create_table') ) :
/**
* Create database table, if it doesn't already exist.
*
- * @since unknown
- * @package WordPress
- * @subpackage Plugin
- * @uses $wpdb
+ * @since 1.0.0
+ *
+ * @global wpdb $wpdb WordPress database abstraction object.
*
* @param string $table_name Database table name.
* @param string $create_ddl Create database table SQL.
return true;
}
}
- //didn't find it try to create it.
+ // Didn't find it, so try to create it.
$wpdb->query($create_ddl);
- // we cannot directly tell that whether this succeeded!
+
+ // We cannot directly tell that whether this succeeded!
foreach ($wpdb->get_col("SHOW TABLES",0) as $table ) {
if ($table == $table_name) {
return true;
/**
* Add column to database table, if column doesn't already exist in table.
*
- * @since unknown
- * @package WordPress
- * @subpackage Plugin
- * @uses $wpdb
- * @uses $debug
+ * @since 1.0.0
+ *
+ * @global wpdb $wpdb WordPress database abstraction object.
*
* @param string $table_name Database table name
* @param string $column_name Table column name
* @return bool False on failure. True, if already exists or was successful.
*/
function maybe_add_column($table_name, $column_name, $create_ddl) {
- global $wpdb, $debug;
+ global $wpdb;
foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {
- if ($debug) echo("checking $column == $column_name<br />");
if ($column == $column_name) {
return true;
}
}
- //didn't find it try to create it.
+
+ // Didn't find it, so try to create it.
$wpdb->query($create_ddl);
- // we cannot directly tell that whether this succeeded!
+
+ // We cannot directly tell that whether this succeeded!
foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {
if ($column == $column_name) {
return true;
/**
* Drop column from database table, if it exists.
*
- * @since unknown
- * @package WordPress
- * @subpackage Plugin
- * @uses $wpdb
+ * @since 1.0.0
+ *
+ * @global wpdb $wpdb WordPress database abstraction object.
*
* @param string $table_name Table name
* @param string $column_name Column name
global $wpdb;
foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {
if ($column == $column_name) {
- //found it try to drop it.
+
+ // Found it, so try to drop it.
$wpdb->query($drop_ddl);
- // we cannot directly tell that whether this succeeded!
+
+ // We cannot directly tell that whether this succeeded!
foreach ($wpdb->get_col("DESC $table_name",0) as $column ) {
if ($column == $column_name) {
return false;
}
}
}
- // else didn't find it
+ // Else didn't find it.
return true;
}
* Default
* Extra
*
- * @since unknown
- * @package WordPress
- * @subpackage Plugin
+ * @since 1.0.0
+ *
+ * @global wpdb $wpdb WordPress database abstraction object.
*
* @param string $table_name Table name
- * @param string $col_name Column name
- * @param string $col_type Column type
- * @param bool $is_null Optional. Check is null.
- * @param mixed $key Optional. Key info.
- * @param mixed $default Optional. Default value.
- * @param mixed $extra Optional. Extra value.
+ * @param string $col_name Column name
+ * @param string $col_type Column type
+ * @param bool $is_null Optional. Check is null.
+ * @param mixed $key Optional. Key info.
+ * @param mixed $default Optional. Default value.
+ * @param mixed $extra Optional. Extra value.
* @return bool True, if matches. False, if not matching.
*/
function check_column($table_name, $col_name, $col_type, $is_null = null, $key = null, $default = null, $extra = null) {
- global $wpdb, $debug;
+ global $wpdb;
$diffs = 0;
$results = $wpdb->get_results("DESC $table_name");
foreach ($results as $row ) {
- if ($debug > 1) print_r($row);
if ($row->Field == $col_name) {
- // got our column, check the params
- if ($debug) echo ("checking $row->Type against $col_type\n");
+
+ // Got our column, check the params.
if (($col_type != null) && ($row->Type != $col_type)) {
++$diffs;
}
++$diffs;
}
if ($diffs > 0) {
- if ($debug) echo ("diffs = $diffs returning false\n");
return false;
}
return true;
}
return false;
}
-
-?>