新增功能(二)LOGIN

新增功能(二)

下面我們來看下新增功能的php程式碼。

添加資料肯定是往資料庫中添加,所以第一步一定是要先連接資料庫.

<?php
$link = mysqli_connect("localhost","root","root","joke");
  if (!$link) {
             die("连接失败: " . mysqli_connect_error());
        }
?>

我們後面可能還會用到連接資料庫的程式碼,所以我們可以將這段程式碼提取出來,單獨放在一個檔案中,以後使用直接引用檔案就可以了,例如取名config.php,以後我們用只需要include引用一下就可以了。

接下來就是接收取得前端表單頁面傳遞過來的值。和之前的註冊是一樣的。

另外就是有關圖片上傳,這裡是實例化呼叫類別的方法來實作。當然你也可以自己寫。

<?php
if($_POST){
  date_default_timezone_set("PRC");         //设置时区
  $author = isset($_POST['author'])?$_POST['author']:"";     //获取表单传递过来的值
  $content = isset($_POST['content'])?$_POST['content']:"";
  $cid = isset($_POST['cid'])?$_POST['cid']:"";
 require 'fileupload.class.php';                           //引用类文件
 $upobj=new FileUpload();                                  //实例化调用类
 $ret=$upobj->upload('pic');
 if($ret==1){
   $creat_time = date("Y-m-d H:i:s");
?>

函數date_default_timezone_set()是設定時區的,"PRC"則代表的是中國時區。

在使用引用類別方法時,需要對類別檔案有所了解,否則可能會引用出錯。

接下來就是將接收的資料插入資料庫,使用insert into語句

<?php
if($author && $content && $creat_time && $cid){
   $sql ="insert into list(author,content,creat_time,image,cid) values('$author','$content','$creat_time','{$upobj->newpath}',$cid)";
   $rel = mysqli_query($link,$sql);
   if($rel) {
     echo "添加成功" . "<br/><br/>";
     echo "<a href='list.php'>跳转至列表页面</a>";
   }
 }else {
   echo "添加失败" . "<br/><br/>";
   echo "<a href='add.php'>跳转至添加页面</a>";
 }
}
?>

先寫插入語句,接著執行插入語句,將回傳值賦給變數$rel,判斷$rel是不是有值,如果有就加入成功,如果沒有就加入失敗。

最後我們這個新增的功能就算完成了。

下一節
<?php session_start(); header("content-type:text/html;charset=utf-8"); //连接数据库 $link = mysqli_connect("localhost","root","root","joke"); if (!$link) { die("连接失败: " . mysqli_connect_error()); } if($_POST){ date_default_timezone_set("PRC"); $author = isset($_POST['author'])?$_POST['author']:""; $content = isset($_POST['content'])?$_POST['content']:""; $cid = isset($_POST['cid'])?$_POST['cid']:""; require 'fileupload.class.php'; $upobj=new FileUpload(); $ret=$upobj->upload('pic'); if($ret==1){ $creat_time = date("Y-m-d H:i:s"); if($author && $content && $creat_time && $cid){ $sql ="insert into list(author,content,creat_time,image,cid) values('$author','$content','$creat_time','{$upobj->newpath}',$cid)"; $rel = mysqli_query($link,$sql); if($rel) { echo "添加成功" . "<br/><br/>"; echo "<a href='list.php'>跳转至列表页面</a>"; } }else { echo "添加失败" . "<br/><br/>"; echo "<a href='add.php'>跳转至添加页面</a>"; } } ?> <!DOCTYPE html> <html lang="zh-cn"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <meta name="renderer" content="webkit"> <title></title> <link rel="stylesheet" href="css/pintuer.css"> <link rel="stylesheet" href="css/admin.css"> <script src="js/jquery.js"></script> <script src="js/pintuer.js"></script> <script type="text/javascript" charset="utf-8" src="ueditor/ueditor.config.js"></script> <script type="text/javascript" charset="utf-8" src="ueditor/ueditor.all.min.js"> </script> <!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败--> <!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文--> <script type="text/javascript" charset="utf-8" src="ueditor/lang/zh-cn/zh-cn.js"></script> </head> <body> <div class="panel admin-panel"> <div class="panel-head" id="add"><strong><span class="icon-pencil-square-o"></span>增加内容</strong></div> <div class="body-content"> <!--添加内容--> <form method="post" class="form-x" action="" enctype="multipart/form-data"> <div class="form-group"> <div class="label"> <label>图片:</label> </div> <div class="field"> <input type="file" id="url1" name="pic" class="input tips" style="width:25%; float:left;" value="" data-toggle="hover" data-place="right" data-image="" /> <input type="button" class="button bg-blue margin-left" id="image1" value="+ 浏览上传" style="float:left;"> <div class="tipss">图片尺寸:500*500</div> </div> </div> <div class="form-group"> <div class="label"> <label>分类标题:</label> </div> <div class="field"> <select name="cid" class="input w50"> <option value="">请选择分类</option> <option value="1">搞笑段子</option> <option value="2">搞笑图片</option> </select> <div class="tips"></div> </div> </div> <div class="form-group"> <div class="label"> <label>内容:</label> </div> <div class="field"> <textarea name="content" class="" id="content" style="height:450px;"></textarea> <div class="tips"></div> </div> </div> <div class="form-group"> <div class="label"> <label>发布时间:</label> </div> <div class="field"> <script src="js/laydate/laydate.js"></script> <input type="text" class="laydate-icon input w50" name="creat_time" onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})" value="" data-validate="required:日期不能为空" style="padding:10px!important; height:auto!important;border:1px solid #ddd!important;" /> <div class="tips"></div> </div> </div> <div class="form-group"> <div class="label"> <label>作者:</label> </div> <div class="field"> <input type="text" class="input w50" name="author" value="" /> <div class="tips"></div> </div> </div> <div class="clear"></div> <div class="form-group"> <div class="label"> <label></label> </div> <div class="field"> <button class="button bg-main icon-check-square-o" type="submit"> 提交</button> </div> </div> </form> </div> </div> <script type="text/javascript"> //实例化编辑器 //建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例 UE.getEditor('content',{initialFrameWidth:1500,initialFrameHeight:400,}); </script> </body> </html>
章節課件