проблем с модула drupal intsall

моля, проверете моя код по-долу, моят drupal е D6, не създава таблица, както и не изтрива таблици.

<?php
// custom1.install

function custom1_install() {
  switch ($GLOBALS['db_type']) {
    case 'mysql':
    case 'mysqli':
      db_query("CREATE TABLE IF NOT EXISTS block_quiz_customer_ans (
        crid int(30) NOT NULL AUTO_INCREMENT,
        qid int(30) NOT NULL,
        cust_ans varchar(255) NOT NULL,
        cust_ip varchar(255) NOT NULL,
        cust_res_date_time varchar(255) NOT NULL,
        created varchar(50) NOT NULL,
        status tinyint(20) NOT NULL DEFAULT '1',
        PRIMARY KEY (`crid`)
        ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=0;");
      break;
  }
}

function custom1_uninstall() {
  print "This is uninstall";
  drupal_uninstall_schema('block_quiz_customer_ans');
  variable_del('block_quiz_customer_ans');
}

person bharanikumar Bs    schedule 19.09.2011    source източник


Отговори (1)


Използвайте схема вместо mysql заявки за инсталационния файл на модул.

function custom1_install(){
$schema['table_name'] = array(
    'description' => '<description',
    'fields' => array(
      'field_name' => array(
        'description' => '<description>',
        'type' => '<datatype>',
      ),
    ),
    'primary key' => array('<field_name>'),
  );
return $schema;

}

Надявам се това да помогне!!

person Piyuesh Kumar    schedule 19.09.2011