|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- /**
- * 增加自定义表单
- *
- * @version $id:diy_add.php 14:31 2010年7月12日 tianya $
- * @package DedeBIZ.Administrator
- * @copyright Copyright (c) 2022 DedeBIZ.COM
- * @license https://www.dedebiz.com/license
- * @link https://www.dedebiz.com
- */
- require_once(dirname(__FILE__)."/config.php");
- CheckPurview('c_New');
- $mysql_version = $dsql->GetVersion();
- $mysql_versions = explode(".", trim($mysql_version));
- $mysql_version = $mysql_versions[0].".".$mysql_versions[1];
- if (empty($action)) {
- $row = $dsql->GetOne("SELECT diyid FROM `#@__diyforms` ORDER BY diyid DESC LIMIT 0,1");
- if (is_array($row)) $newdiyid = $row['diyid'] + 1;
- else $newdiyid = 1;
- include(DEDEADMIN."/templets/diy_add.htm");
- } else {
- if (preg_match("#[^0-9-]#", $diyid) || empty($diyid)) {
- ShowMsg("<span class='text-danger'>'自定义表单id'</span>必须为数字", "-1");
- exit();
- }
- if ($table == "") {
- ShowMsg("表名不能为空", "-1");
- exit();
- }
- $public = isset($public) && is_numeric($public) ? $public : 0;
- $name = dede_htmlspecialchars($name);
- $row = $dsql->GetOne("SELECT * FROM `#@__diyforms` WHERE diyid='$diyid' OR `table` LIKE '$table' OR name LIKE '$name'");
- if (is_array($row)) {
- ShowMsg("可能自定义表单的‘diyid’、‘名称’在数据库中已存在,不能重复使用", "-1");
- exit();
- }
- if ($cfg_dbtype=="sqlite") {
- $query = "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;";
- } else {
- $query = "SHOW TABLES";
- }
- $dsql->SetQuery($query);
- $dsql->Execute("biz");
- while ($row = $dsql->GetArray("biz")) {
- if (empty($row[0])) $row[0] = '';
- if ($table == $row[0]) {
- showmsg('指定的表在数据库中重复', '-1');
- exit();
- }
- }
- $sql = "CREATE TABLE IF NOT EXISTS `$table`(
- `id` int(10) unsigned NOT NULL auto_increment,
- `ifcheck` tinyint(1) NOT NULL default '0',
- ";
- if ($mysql_version < 4.1) {
- $sql .= " PRIMARY KEY (`id`)\r\n) TYPE=MyISAM; ";
- } else {
- $sql .= " PRIMARY KEY (`id`)\r\n) ENGINE=MyISAM DEFAULT CHARSET=".$cfg_db_language."; ";
- }
- if ($dsql->ExecuteNoneQuery($sql)) {
- $query = "INSERT INTO `#@__diyforms` (`diyid`,`name`,`table`,`info`,`listtemplate`,`viewtemplate`,`posttemplate`,`public` ) VALUES ('$diyid','$name','$table','','$listtemplate','$viewtemplate','$posttemplate','$public')";
- $dsql->ExecuteNoneQuery($query);
- showmsg('自定义表单创建成功,请自行添加字段', 'diy_main.php');
- } else {
- showmsg('自定义表单创建失败', '-1');
- }
- }
- ?>
|