Brauche hilfe bei Installationsscript!
Verfasst: 25.10.2003 14:45
Hi,
ich bau gerad ein phpbb mit mehrern mods zusammen und will ein installationsscript schreiben, dass automatisch alle eintragungen in die datenbank, die die mods erfordern, vornimmt!
ich hab als vorlage einfach mal das script des global announcement mods genommen und steh jetzt vor einem problem! ich will die eintragungen in die db die der color groups mod vornimmt auch in das script integrieren, aber die scheinen ein etwas anderes format zu haben!
das script sieht bis jetzt so aus:
so, die eintragungen des color groups mod muss man aber über phpmyadmin vornehmen, die zeilen die man da eintragen muss lauten so:
da das hier ja die direkte mysql syntax is, glaub ich nicht dass ich das so einfach da einfügen kann!
kann mir jemand sagen, was ich ändern muss, um die zeilen in mein script zu übernehmen??
ich bau gerad ein phpbb mit mehrern mods zusammen und will ein installationsscript schreiben, dass automatisch alle eintragungen in die datenbank, die die mods erfordern, vornimmt!
ich hab als vorlage einfach mal das script des global announcement mods genommen und steh jetzt vor einem problem! ich will die eintragungen in die db die der color groups mod vornimmt auch in das script integrieren, aber die scheinen ein etwas anderes format zu haben!
das script sieht bis jetzt so aus:
Code: Alles auswählen
<?php
#########################################################
## SQL commands to phpBB2
## Author: Niels Chr. Rød
## Nickname: Niels Chr. Denmark
## Email: ncr@db9.dk
##
## Ver 1.0.7
##
## phpBB2 database update script for mods
## this file is intended to use with phpBB2, when installing mods
## after so you may delete this file, but only admin can use so it really doesen't matter
## The script will look what prefix you are using, and use the existing DB defined by config.php
## The execution of this script's included SQL is harmless, so you can run it as meny times you like
## note, though that the users last visit, will be set back to his/her last login,
## but that is a minor cosmetic isue, that will correct it self next time the use logs in
##
## the following example are from my mods, and you can add some self, for other mods if you like
## you will after execution get a list over those commands that are run with succes and those with warnings !
## delete the sample lines if you are using it only for other mods
##
#########################################################
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/functions_selects.'.$phpEx);
define('SITE_HISTORY_TABLE', $table_prefix.'site_history');
###################################################################################################
##
## put the SQL commands below here, the SQL commands listed below are only exampels, substitude them with the one you need ##
##
###################################################################################################
$sql=array(
'ALTER TABLE '.FORUMS_TABLE.' ADD auth_globalannounce TINYINT (2) DEFAULT "3" NOT NULL AFTER auth_announce',
'ALTER TABLE '.AUTH_ACCESS_TABLE.' ADD auth_globalannounce TINYINT (1) not null AFTER auth_announce',
'ALTER TABLE '.USERS_TABLE.' ADD user_birthday INT DEFAULT "999999" not null ',
'ALTER TABLE '.USERS_TABLE.' ADD user_next_birthday_greeting INT DEFAULT "0" not null ',
'INSERT INTO '.CONFIG_TABLE.' (config_name, config_value) VALUES ("birthday_required", "0")',
'INSERT INTO '.CONFIG_TABLE.' (config_name, config_value) VALUES ("birthday_greeting", "1")',
'INSERT INTO '.CONFIG_TABLE.' (config_name, config_value) VALUES ("max_user_age", "100")',
'INSERT INTO '.CONFIG_TABLE.' (config_name, config_value) VALUES ("min_user_age", "5")',
'INSERT INTO '.CONFIG_TABLE.' (config_name, config_value) VALUES ("birthday_check_day", "7")'
'ALTER TABLE '.USERS_TABLE.' ADD user_gender TINYINT not null DEFAULT "0"'
);
$mods = array (
'Global Announcement Mod','Global Announcement Mod',
'Birthday PART 1 Mod','Birthday PART 1 Mod','Birthday PART 2 Mod','Birthday PART 2 Mod','Birthday PART 2 Mod','Birthday PART 2 Mod','Birthday PART 2 Mod',
'Gender Mod'
);
############################################### Do not change anything below this line #######################################
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
if ($userdata['user_level']!=ADMIN)
message_die(GENERAL_ERROR, "You are not Authorised to do this");
$n=0;
$message="<b>This list is a result of the SQL queries needed for the additional mods in the pre-moded pack</b><br/><br/>";
while($sql[$n])
{
$message .= ($mods[$n-1] != $mods[$n]) ? '<p><b><font size=3>'.$mods[$n].'</font></b><br/>' : '';
if(!$result = $db->sql_query($sql[$n]))
$message .= '<b><font color=#FF0000>[Already added]</font></b> line: '.($n+1).' , '.$sql[$n].'<br />';
else $message .='<b><font color=#0000fF>[Added/Updated]</font></b> line: '.($n+1).' , '.$sql[$n].'<br />';
$n++;
}
message_die(GENERAL_MESSAGE, $message);
?>Code: Alles auswählen
CREATE TABLE `phpbb_color_groups` (
`group_id` mediumint(8) unsigned NOT NULL auto_increment,
`group_name` varchar(255) NOT NULL default '',
`group_color` varchar(50) NOT NULL default '',
PRIMARY KEY (`group_id`),
UNIQUE KEY `group_name` (`group_name`)
) TYPE=MyISAM ;
ALTER TABLE `phpbb_users` ADD `user_color_group` MEDIUMINT UNSIGNED NOT NULL ;
ALTER TABLE `phpbb_color_groups` ADD `hidden` TINYINT( 1 ) DEFAULT '0' NOT NULL ;
ALTER TABLE `phpbb_color_groups` ADD `order_num` MEDIUMINT NOT NULL ;
ALTER TABLE `phpbb_groups` ADD `group_color_group` MEDIUMINT UNSIGNED NOT NULL ;kann mir jemand sagen, was ich ändern muss, um die zeilen in mein script zu übernehmen??