Server : nginx/1.22.1
System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
User : www ( 1000)
PHP Version : 5.6.40
Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Directory :  /www/wwwroot/www.jkmold.com/phpcms/modules/formguide/fields/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : /www/wwwroot/www.jkmold.com/phpcms/modules/formguide/fields/add.sql.php
<?php

defined('IN_ADMIN') or exit('No permission resources.');

$defaultvalue = isset($_POST['setting']['defaultvalue']) ? $_POST['setting']['defaultvalue'] : '';

//正整数 UNSIGNED && SIGNED

$minnumber = isset($_POST['setting']['minnumber']) ? $_POST['setting']['minnumber'] : 1;

$decimaldigits = isset($_POST['setting']['decimaldigits']) ? $_POST['setting']['decimaldigits'] : '';



switch($field_type) {

	case 'varchar':

		if(!$maxlength) $maxlength = 255;

		$maxlength = min($maxlength, 255);

		$sql = "ALTER TABLE `$tablename` ADD `$field` VARCHAR( $maxlength ) NOT NULL DEFAULT '$defaultvalue'";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'tinyint':

		if(!$maxlength) $maxlength = 3;

		$minnumber = intval($minnumber);

		$defaultvalue = intval($defaultvalue);

		$sql = "ALTER TABLE `$tablename` ADD `$field` TINYINT( $maxlength ) ".($minnumber >= 0 ? 'UNSIGNED' : '')." NOT NULL DEFAULT '$defaultvalue'";

		if (!$unrunsql) $this->db->query($sql);

	break;

	

	case 'number':

		$minnumber = intval($minnumber);

		$defaultvalue = $decimaldigits == 0 ? intval($defaultvalue) : floatval($defaultvalue);

		$sql = "ALTER TABLE `$tablename` ADD `$field` ".($decimaldigits == 0 ? 'INT' : 'FLOAT')." ".($minnumber >= 0 ? 'UNSIGNED' : '')." NOT NULL DEFAULT '$defaultvalue'";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'smallint':

		$minnumber = intval($minnumber);

		$sql = "ALTER TABLE `$tablename` ADD `$field` SMALLINT ".($minnumber >= 0 ? 'UNSIGNED' : '')." NOT NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'int':

		$minnumber = intval($minnumber);

		$defaultvalue = intval($defaultvalue);

		$sql = "ALTER TABLE `$tablename` ADD `$field` INT ".($minnumber >= 0 ? 'UNSIGNED' : '')." NOT NULL DEFAULT '$defaultvalue'";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'mediumint':

		$minnumber = intval($minnumber);

		$defaultvalue = intval($defaultvalue);

		$sql = "ALTER TABLE `$tablename` ADD `$field` INT ".($minnumber >= 0 ? 'UNSIGNED' : '')." NOT NULL DEFAULT '$defaultvalue'";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'mediumtext':

		$sql = "ALTER TABLE `$tablename` ADD `$field` MEDIUMTEXT NOT NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;

	

	case 'text':

		$sql = "ALTER TABLE `$tablename` ADD `$field` TEXT NOT NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;



	case 'date':

		$sql = "ALTER TABLE `$tablename` ADD `$field` DATE NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;

	

	case 'datetime':

		$sql = "ALTER TABLE `$tablename` ADD `$field` DATETIME NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;

	

	case 'timestamp':

		$sql = "ALTER TABLE `$tablename` ADD `$field` TIMESTAMP NOT NULL";

		if (!$unrunsql) $this->db->query($sql);

	break;

	//特殊自定义字段

	case 'pages':

		$this->db->query("ALTER TABLE `$tablename` ADD `paginationtype` TINYINT( 1 ) NOT NULL DEFAULT '0'");

		$this->db->query("ALTER TABLE `$tablename` ADD `maxcharperpage` MEDIUMINT( 6 ) NOT NULL DEFAULT '0'");

	break;

	case 'readpoint':

		$defaultvalue = intval($defaultvalue);

		$this->db->query("ALTER TABLE `$tablename` ADD `readpoint` smallint(5) unsigned NOT NULL default '$defaultvalue'");

		$this->db->query("ALTER TABLE `$tablename` ADD `paytype` tinyint(1) unsigned NOT NULL default '0'");

	break;

}

?>