php简单美工程序分离,内容编辑实例

 更新时间:2016年11月25日 15:57  点击:2037

if($_POST['op'] == 'edit') {
    $sql = "
        UPDATE " . TABLE_PREFIX . "user
        SET
            name = '" . $_POST['name'] . "',
            birthday = '" . $_POST['birthday'] . "',
            email = '" . $_POST['email'] . "',
            sex = '" . $_POST['sex'] . "'
        WHERE
            id = '" . $_POST['id'] . "'

        ";
    if(db_exec($sql)) {
        $notice = array(
            'msg' => '修改成功',
            'alt' => '列表用户',
            'url' => '?op=index'
        );
        require_once 'view/_notice.phtml';
    } else {
        $notice = array(
            'msg' => '修改失败',
            'alt' => '修改用户',
            'url' => '?op=edit&id=' . $_POST['id']
        );
        require_once 'view/_notice.phtml';
    }
} else {
    $sql = "
        SELECT *
        FROM ". TABLE_PREFIX . "user
        WHERE id = '". (int)$_GET['id'] ."' ";
    $data = fetch($sql);
    require_once 'www.111cn.net/edit.phtml';
}

edit.phtml代码

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>用户编辑</title>
</head>
<body>
    <h3>用户编辑</h3>
    <form action="?op=edit" method="post" enctype="application/x-www-form-urlencoded">
        姓名:<input type="text" name="name" size="15" value="<?php echo $data['name'] ?>" /><br />
        生日:<input type="text" name="birthday" size="10" value="<?php echo $data['birthday'] ?>" /> (YYYY-MM-DD)<br />
        邮箱:<input type="text" name="email" size="30" value="<?php echo $data['email'] ?>" /><br />
        性别:<input type="radio" name="sex" value="3"<?php if($data['sex'] == '-') : ?> checked="checked"<?php endif; ?> />保密
              <input type="radio" name="sex" value="1"<?php if($data['sex'] == 'M') : ?> checked="checked"<?php endif; ?> />男
              <input type="radio" name="sex" value="2"<?php if($data['sex'] == 'F') : ?> checked="checked"<?php endif; ?> />女<br />
        <input type="hidden" name="id" value="<?php echo $data['id'] ?>" />
        <input type="hidden" name="op" value="edit" /><br />
        <input type="submit" name="submit" value="编辑用户www.111cn.net" />
    </form>
    <?php require_once 'view/_foot.phtml'; ?>
</body>
</html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
html复选框如果要以数据组形式发送给php脚本处理就必须以如checkbox[]这形式
<form id="form1" name="form1" method="post" action="">
  <label>
  <input type="checkbox" name="checkbox[]" value="1" />
  </label>
  <label>
  <input type="checkbox" name="checkbox[]" value="2" />
  </label>
  <label>
  <input type="checkbox" name="checkbox[]" value="www.111cn.net" />
  </label>
  <label>
  <input type="checkbox" name="checkbox[]" value="111cn.net" />
  </label>
  <label>
  <input type="submit" name="Submit" value="提交" />
  </label>
</form>
</body>
</html>
<?
//判断是否点击提交
if( $_POST )
{
 $array = $_POST['checkbox'];
 print_r($array);
}
/*
 结果:
 Array
 (
  [0] => 1
  [1] => 2
  [2] => www.111cn.net
  [3] => 111cn.net
 )
 
 简单的很多事情在做之前觉得复杂但做起来就很容易了,像这个复选框代码就是这样了。
 本文章原创于www.111cn.net转载注明来源
*/
?>

<?php

数据结构

CREATE TABLE IF NOT EXISTS `leo_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` char(30) NOT NULL,
  `birthday` date NOT NULL,
  `email` char(60) NOT NULL,
  `sex` enum('M','F','-') NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `email` (`email`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;

--
-- 导出表中的数据 `leo_user`
--

INSERT INTO `leo_user` (`id`, `name`, `birthday`, `email`, `sex`) VALUES
(1, '张三', '1980-01-01', 'zhangshan@email.com', 'M'),
(2, '李四', '1998-01-25', 'lisi@test.com', 'M'),
(3, '王五', '1985-12-24', 'wangwu@leophp.cn', '-'),
(4, '赵六', '1978-05-05', 'zhaoliu@test.com', 'F');

 

function db_exec($sql) {
    $resource = mysql教程_connect(DB_HOST, DB_USER, DB_PASSWORD);   //连接数据库教程
    mysql_query("SET NAMES '" . DB_CHARSET . "' ;");            //设置字体集
    $connect = mysql_select_db(DB_NAME, $resource);             //选择数据库
    return mysql_query($sql, $resource);     //执行SQL
}

if($_POST['op'] == 'add') {
    $sql = "
        INSERT INTO " . TABLE_PREFIX . "user (
            name,
            birthday,
            email,
            sex )
        VALUES (
            '" . $_POST['name'] . "',
            '" . $_POST['birthday'] . "',
            '" . $_POST['email'] . "',
            '" . $_POST['sex'] . "'
        )";
    if(db_exec($sql)) {
        $notice = array(
            'msg' => '添加成功',
            'alt' => '列表用户',
            'url' => '?op=index'
        );
        require_once www.111cn.net/_notice.phtml';
    } else {
        $notice = array(
            'msg' => '添加失败',
            'alt' => '添加用户',
            'url' => '?op=add'
        );
        require_once www.111cn.net/_notice.phtml';
    }
} else {
    require_once 'view/add.phtml';
}

//add.phtml模板页面

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>用户添加</title>
</head>
<body>
    <h3>用户添加</h3>
    <form action="?op=add" method="post" enctype="application/x-www-form-urlencoded">
        姓名:<input type="text" name="name" size="15" /><br />
        生日:<input type="text" name="birthday" size="10" /> (YYYY-MM-DD)www.111cn.net<br />
        邮箱:<input type="text" name="email" size="30" /><br />
        性别:<input type="radio" name="sex" value="3" />保密
              <input type="radio" name="sex" value="1" />男
              <input type="radio" name="sex" value="2" />女<br />
        <input type="hidden" name="op" value="add" /><br />
        <input type="submit" name="submit" value="添加用户" />
    </form>
    <?php require_once 'view/_foot.phtml'; ?>
</body>
</html>

date_default_timezone_set() 函数设置用在脚本中所有日期/时间函数的默认时区。

解决这个少了的8小时,有两种方法:
第一种,在PHP的设置文件php.ini中设置date.timezone参数,设置之后的样式如下:

Date.timezone = PRC


另外一种方法,自己设置。在PHP中定义了一个date_default_timezone_set()函数这个函数就是让我们来设置PHP的时间函数所使用的时区的。

例如我们可以这样设置:

Date_default_timezone_set(“PRC”);//设定为中华人民共和国www.111cn.net
echo date("Y-m-d H:i:s");


ini_set('default_charset', HTML_CHARSET);
date_default_timezone_set(TIME_ZONE);

Note: This function always returns true (even if the timezone parameter isn't valid).
注意:这个函数总是返回True(即使时区参数无效的情况下)。

<form id="form1" name="form1" method="post" action="">
  <label>name
  <input name="name" type="text" id="name" />
  </label>
  <p>
    <label>birthday
    <input name="birthday" type="text" id="birthday" />
    </label>
  </p>
  <p>
    <label>email
    <input name="email" type="text" id="email" />
    </label>
  </p>
  <p>
    <label>
    <input type="submit" name="Submit" value="submit" />
    </label>
  </p>
</form>
<?php
//这个函数主要用来检查提交的表单数据是否有错(validate)
//实际应用上用户输入数据的检验(validate)及过滤(filter)都涉到程序安全性,非常重要,必不可少
//在写实际应用时不会把$_POST直接放在函数里,这里是一个姑息的解决方法,希望大家能改正

if( $_POST )
{
 form_error();
}
function form_error() {
    $_POST['name'] = trim(strip_tags($_POST['name'])); //这个实际上是Filter
    $len_name = strlen($_POST['name']);
    if($len_name > 30 || $len_name < 2) {
        $msg = '姓名长度必须大于2小于30<br />';
    }
    $date = explode('-', $_POST['birthday']);
    if(sizeof($date) != 3) {
        $msg .= '日期格式错误<br />';
    } else {
        if(!checkdate($date[1], $date[2], $date[0])) {
            $msg .= '日期不正确<br />';
        }
    }
    if(!eregi("^[a-z'0-9]+([._-][a-z'0-9]+)*@([a-z0-9]+([._-][a-z0-9]+))+$", $_POST['email'])) {
        $msg .= '邮箱格式错误';
    }
    return $msg;
}
?>

[!--infotagslink--]

相关文章