Seite 1 von 1

DB Update klappt nicht

Verfasst: 01.06.2009 16:40
von fragz
HiHo,

Ich würde gerne einige Daten per ACP in der Datenbank updaten aber es haut einfach nicht hin.
Ich erhalte immer die Meldung
SQL ERROR [ mysql4 ]

Unknown column 'server' in 'field list' [1054]

SQL

UPDATE phpbb_ts SET server = 'domein.', port = '8767', channel = 'rootpoint', tooltip = ''

BACKTRACE
Hier ein kleiner und der eigentliche Code aus dem ACP

Code: Alles auswählen

$u_action = (!isset($_GET['action'])) ? '' : $_GET['action'];
        $u_action = (isset($_POST['submit']));
        
        $server = request_var('server', '');
        $port = request_var('port', '');
        $channel = request_var('channel', '');
        $tooltip = request_var('tooltip', '');
        
    switch ($u_action)
        {
            case 'update':
        $sql = "SELECT *
            FROM " . TS_TABLE ;
        $result = $db->sql_query($sql);
        $row = $db->sql_fetchrow($result);
        
        
        //Make SQL Array
        $sql_ary = array(
            'server'            => $server,
            'port'              => $port,
            'channel'           => $channel,
            'tooltip'            => $tooltip,
        );

                $db->sql_query('UPDATE ' . TS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary));
                trigger_error($user->lang['ACP_TS_UPDATE'] . adm_back_link($this->u_action));
        break;
        } 

Re: DB Update klappt nicht

Verfasst: 01.06.2009 17:10
von nickvergessen
Und wie sieht die phpbb_ts aus?

Re: DB Update klappt nicht

Verfasst: 01.06.2009 17:17
von fragz
Aso, ganz vergessen sorry

Code: Alles auswählen

CREATE TABLE IF NOT EXISTS `phpbb_ts` (
  `config_name` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',
  `config_value` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',
  PRIMARY KEY (`config_name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

INSERT INTO `phpbb_ts` (`config_name`, `config_value`) VALUES
('server', 'domain'),
('port', '8767'),
('channel', 'rootpoint'),
('tooltip', 'text');

Re: DB Update klappt nicht

Verfasst: 01.06.2009 18:10
von nickvergessen
Dann muss dien Code so sein:

Code: Alles auswählen

	$sql_ary = array(
		'config_value' 	=> $server,
	);
	$db->sql_query('UPDATE ' . TS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE config_name =  'server'");

	$sql_ary = array(
		'config_value' 	=> $port,
	);
	$db->sql_query('UPDATE ' . TS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE config_name =  'port'");

	$sql_ary = array(
		'config_value' 	=> $channel,
	);
	$db->sql_query('UPDATE ' . TS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE config_name =  'channel'");

	$sql_ary = array(
		'config_value' 	=> $tooltip,
	);
	$db->sql_query('UPDATE ' . TS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE config_name =  'tooltip'");

Re: DB Update klappt nicht

Verfasst: 01.06.2009 19:21
von fragz
HiHo,

Ich denke mal ich habe noch eine kleinigkeit übersehen oder ich komme einfach nicht drauf.
Trotz das er die Daten ändert, erhalte ich
SQL ERROR [ mysql4 ]

Duplicate entry 'server' for key 'PRIMARY' [1062]

SQL

UPDATE phpbb_TS SET config_name = 'server', config_value = 'domain'

BACKTRACE

Re: DB Update klappt nicht

Verfasst: 01.06.2009 23:04
von nickvergessen
Angepasst...