php新闻添加图片,开发企业网站12 -- 新闻添加(带图片上传)

news/2024/5/20 4:15:03/文章来源:https://blog.csdn.net/weixin_29070861/article/details/115688857

math?formula=%5Ccolor%7Brgba(254%2C%2067%2C%20101%2C%20.8)%7D%7B%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E4%BC%98%E5%8C%96%E5%92%8C%E6%96%B0%E9%97%BB%E6%B7%BB%E5%8A%A0%7D

math?formula=%5Ccolor%7Brgba(254%2C%2067%2C%20101%2C%20.8)%7D%7Bnews%5C_category%5C_add.php%E4%BB%A3%E7%A0%81%7D

require_once('init.php');

if(!empty($_POST)){

//这里接收news_add.php传过来的数据

$data = $_POST;

//这个值有默认值,所以判断一下

//传值就使用传过来的值,空值就使用默认值0

$data['sort'] = !empty($_POST['sort'])?intval($_POST['sort']):0;

//修改功能,接收html页面传过来的id

//并进行判断。如果id大于0,就是修改,否则就是添加

// 如果执行成功,会通过下面的execute函数返回1,到news_category_add.html页面,进行添加操作

$id = $_POST['id'];

if($id > 0){

$ret = update($data, 'news_category', "id=$id");

}else{

//接收到上面传递过来的值之后,用sql语句将数据写入表中

unset($data['id']);

//把下面这个sql语句封装成一个函数 insert函数,

//因为增加表名不能每次写一遍,这里用news_category写死了

//$sql = "insert into news_category(".implode(',', array_keys($data)).") values ('".implode("','",array_values($data))."')";

//函数的参数是页面传过来的用户添加的数据(表名)和表名在数据库中的字段

$ret = insert($data, 'news_category');

}

//因为是异步操作,所以查询完了之后不能直接跳转页面,需要进行判定

//然后在news_category_add.html页面接收值

if($ret !== false){

echo 1;

}else{

echo 0;

}

}else{

//修改功能:

//通过GET方法获取news_category.html带过来的id(这个ID在搜索框中)

$id = $_GET['id'];

//逻辑:如果获取到的ID大于0,表示有id,那么就是修改

//然后用数据库查询函数查出这个id

//然后用smarty把这个查到的值传递给

//else是做添加时默认选项功能

//else后面是把嵌入的news_category_add.html页面的显示和排序的默认值0和1设置默认值

//这样在添加的时候,就只需要填写名称了,有需要才填显示隐藏和排序

if($id > 0){

$row = get_row("select * from news_category where id=$id limit 1");

}else{

$row = ['is_show'=>1, 'sort'=>0];

}

$smarty->assign('row', $row);

$smarty->display($tpl_name);

}

?>

math?formula=%5Ccolor%7Brgba(254%2C%2067%2C%20101%2C%20.8)%7D%7Bnews%5C_add.php%E4%BB%A3%E7%A0%81%7D

require_once('init.php');

if( !empty($_POST)){

$data = $_POST;

//之前的php中显示的时间格式是年月日时分秒,但是数据库中写的格式是int

//需要用strtotime转换为时间戳格式,否则会报错

$data['publish_time'] = strtotime($data['publish_time']);

//在添加之前,还要先把添加时间加进来 时间字段 = 当前时间戳

$data['add_time'] = time();

//上传需要修改图片,但是修改新闻列表不需要该图片

//所以要判断是否需要修改图片,就判断是否上传了文件

//上传了文件就调用upload()函数

//还有上传的页面有可能出错,所以也要先对这种情况进行判定,

if(!empty($_FILE['file'])){

$result = upload('file');

if($result['error']==1){

echo $result['message'];//在上传页面,已经写了打印上传是否成功的信息,这里直接调用

die;

}

//如果成功就把缩略图路径放到data里面

$data['thumb'] = $result['url'];

}

//unset()函数用于销毁给定的变量。

//这个name是news_add.html的提交按钮的name

//这样除了file里的值没有,其他的都传过来了

unset($data['file']);

//然后,跟前面一样,如果data里的ID大于0就是修改,否则就是添加

if($data['id'] > 0){

$ret = update($data, 'news', "id={$data['id']}");

}else{

//添加需要把id删掉,因为id是自增长的

unset($data['id']);

//添加的sql语句:

// implode 把数组元素组合为字符串

// array_keys 返回包含数组中所有键名的一个新数组

// $sql = "insert into news ("..")";这是一个整体,两个点的前后都是字符串,中间是变量

// ")"就是一个括号

//在这里还不能直接执行,会报错

//因为sql中的时间字段,数据库中写的是int类型

//但是实际显示的是2019-10-10 16:20:52这样的类型

//所以需要在这个if之前用 strtotime 函数把时间类型转换为时间戳

//$sql = "insert into news (".implode(',',array_keys($data)).") values ('".implode ("','", array_values($data))."')";

//之前封装了添加的函数,这里就不写语句了,下面直接调用

$ret = insert($data, 'news');

}

if($ret !== false){

echo 1;

}else{

echo '操作失败';

}

}else{

//修改功能:

//通过GET方法获取news_category.html带过来的id(这个ID在搜索框中)

$id = $_GET['id'];

//逻辑:如果获取到的ID大于0,表示有id,那么就是查询

//然后用数据库查询函数查出这个id

//然后用smarty把这个查到的值传递news_add.html

//else是做添加时默认选项功能

//else后面是把嵌入的news_add.html页面的显示时间默认值

//这样在添加的时候,如果没有给时间,就给一个默认当前时间

//

if($id > 0){

$row = get_row("select * from news where id=$id limit 1");

}else{

// mt_rand() 使用 Mersenne Twister 算法返回随机整数。

//不给参数是0-21亿

$row = ['publish_time'=>date('Y-m-d H:i:s'), 'read_num'=>mt_rand(0, 1000)];

}

// 分类栏目先写名字和id就够用了,所以查询写id和name就够了

//根据sort进行排序,如果sort一样,再根据id进行降序排列

//然后把这个变量分配到news_add.html

$category = get_all("select id, name from news_category order by sort, id desc");

$smarty->assign('row', $row);

$smarty->assign('category', $category);

$smarty->display($tpl_name);

}

?>

math?formula=%5Ccolor%7Brgba(254%2C%2067%2C%20101%2C%20.8)%7D%7Bdb.php%E5%87%BD%E6%95%B0%7D

//这是用户添加新闻分类(banner部分的title)的函数,用于创建数据库字段,并把用户上传的数据写入数据库

function insert($data, $tableName){

$sql = "insert into $tableName (".implode(',', array_keys($data)).") values ('".implode("','",array_values($data))."')";

return execute($sql);

}

//上面这个函数是添加新闻分类,这个函数是修改新闻分类名称和id;

function update($data, $tableName, $where){

//先判断where条件是不是为空,才能继续下去

//$where就是数据库里的字段,要改哪一个,$where就是哪一个

if(empty($where)){

die('修改要有条件');

}

/*

这行只能修改id,通过在db.php页面写一个修改分类名称的函数,然后在这里添加sql语句

$sql = "update news_category set name='$name', is_show='$is_show', sort='$sort' where id='$id'";

*/

/*下面要写的这行代码功能是修改新闻分类的名称和修改id(上面的那一行sql只能修改id)

逻辑是拿到之前的分类信息

这个分类信息拿过来是一个索引数组,类似这样:

[

'id' => 3,

'name' => '娱乐新闻',

'is_show' => 1;

'sort' => 10;

]

然后用foreach循环遍历这个数组,逐个修改这个数组的value

*/

$sql = "update $tableName set ";

foreach($data as $k=>$v){

$sql .= $k."='".$v."',";

}

$sql = rtrim($sql, ',');//去掉右边的逗号,去掉两边是trim();

//使用封装好的操作函数库的查询函数调用它,将上面的数据库语言作为参数传给函数

$sql .= " where $where";

return execute($sql);

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_829501.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

web浏览器与网站服务器,web服务器和web浏览器

web服务器和web浏览器 内容精选换一换当您需要实现网站HTTPS化,并监控HTTPS业务流量,识别并阻断SQL注入、CC攻击等攻击,保护Web服务安全稳定时,本文档指导您如何实现网站HTTPS化并对HTTPS业务流量进行监控。假设您有一个网站&…

匿名用户访问用发布站点模板创建网站的列表项时要求登录的问题解决

因为发布站点中的一个Feature被打开了,造成将列表FormPage的查看给Lock了,所以需要登录,将其关闭就OK了。哈哈。英文KB:Users are unexpectedly prompted to enter their credentials when they access a list in a Windows Share…

如何部署互动百科的开源wiki建站系统

最近想在技术部门内部搭建一个知识共享平台,经过一番了解和相关资料的查阅,选定了互动百科的开源wiki系统。选定互动wiki(下文简称hdwiki),主要的原因有如下几个方面: 1.中文版。这样对于我个人或者团队内部成员而言&a…

大型高性能网站的十项规则,互联网营销

在我们公司ChinaNetCloud,见过多种不同类型的网站和系统,有好也有差。其中有些系统拥有良好的服务器/网络架构,并且进行了合理的调整和监控;然而一般的系统都会有安全和性能上的问题,不能良好运行,也无法变…

Jupiter:微软的下一代统一开发平台?,徐汇区网站设计

Silverlight真的完了么?未来在Windows 8和Windows phone中抉择吗?这是一个萦绕在Windows开发者脑海的问题,曾经Silverlight是解决开发者们跨平台跨浏览器兼容性的钥匙,后来又有了Javascript和HTML5来创建Windows 8上面的应用&…

Java.net网站新改版上线

Java.net 网站在今年2月25日时关闭进行升级,现在已经升级完毕(不知道什么升级需要这么长时间)。新版本更新编辑网页、博客、wikis和改组后的论坛。原文链接:http://www.oschina.net/news/15947/javanet-gets-some-new-jolt转载于:…

16个精美的 HTML5 作品集网站设计案例

今天分享的作品集网站有些特别,因为他们都是使用 HTML5 制作的。对于设计师来说,为了吸引注意力,作品集必须展示出你的能力,这有点像制作简历,要让人们看到你所擅长的,突出的部分,这是一次推销自…

转载——网站重构的8点建议

1.用局部变量替换多次使用的对象 比如我们在一段代码内,多次使用document、window这样的对象,我们可以用局部变量替换他们。 var d document,w window; 原理:访问直接量和局部变量的速度快,相反,访问数组元素和对象成…

ASP.NET 2.0中轻松实现网站换肤

一、简介:利用Themes我们可以很容易的更改控件、页面的风格,而不需要修改我们的代码和页面文件。Themes文件被单独的放在1个App_Themes文件夹下面,与你的程序是完全分开的。二、怎么使用Themes和Skins:  先看个非常简单的实例&a…

Python 使用 scrapy shell 网站 进入命令窗口时候报错 AttributeError: module ‘lib‘ has no attribute

Python 使用 scrapy shell 网站 进入命令窗口时候报错 问题描述——AttributeError: module ‘lib’ has no attribute ‘X509_V_FLAG_CB_ISSUER_CHECK’‘action’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 问题原因 错误分析:主要原因是…

想要好看的壁纸图片,用这个网站一键解决,不用爬虫也能实现爬虫效果,一键爬取图片网站所有的图片

想要好看的壁纸图片,用这个网站一键解决,不用爬虫也能实现爬虫效果,一键爬取图片网站所有的图片 网站的地址 https://extract.pics/演示例子: 图片网站 https://www.sohu.com/a/582693827_121123945演示:

视频工作者应该知道的几个网站

2019独角兽企业重金招聘Python工程师标准>>> 视频质量评价: MSU Video Quality Measurement Tool: MSU Video Quality Measurement Tool(msu vqmt)是一种客观视频质量评价程序。它提供了多种全参考视频质量评价方法&am…

在网站内建立地图(百度地图)

有时候网站会标注公司的地理位置&#xff0c;为了更直观的体现地理位置&#xff0c;一般会在网站内部嵌入地图。如下图例子&#xff1a; 完整html代码如下&#xff1a; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org…

利用Metaweblog技术的API接口同步到多个博客网站(详细)

很早就有这个想法&#xff1a;自己有时候会用到多个博客&#xff0c;有些博客在一个网站上写完之后&#xff0c;要同步到其他博客网站&#xff0c;自己只能复制粘贴&#xff0c;感觉特别没意思&#xff0c;复制粘贴的麻木了。一直在想有哪些技术能实现一次写博&#xff0c;多站…

IT开发常见网站整理-ing

1、http://www.stylusstudio.com/Stylus Studio是一款非常不错的XML编辑器&#xff0c;使用Stylus Studio可以帮助用户设计和导出XML项目的IDE环境&#xff0c;支持语法高亮&#xff0c;XPath查询编辑器&#xff0c;文档验证器&#xff0c;拼写检查等XML编辑器StylusStudio XML…

前端开发学习网站

1、http://www.runoob.com

用腾讯云搭建自己的个人网站(借助wordpress)

1、申请一个云服务器 https://console.cloud.tencent.com/cvm/instance/detail?actionDescribeInstanceVncUrl&rid8&idins-amwelbux 2、入门搭建个人博客用wordpress https://cloud.tencent.com/product/cvm/getting-started 三、登录云服务器&#xff1a; https:/…

通过读取淘宝API的优化 来考虑高并发网站的架构讨论

做一个淘宝客网站所需要的API&#xff0c;TOP几乎没有任何权限限制&#xff0c;唯一困扰各位淘客的应该就是流量了。以下详细讲解了四个案例&#xff0c;循序渐进&#xff0c;最终提供一个给各位淘客参考的网站架构&#xff0c;来解决这个流量超限的问题。本文仅针对淘宝客网站…

好网站记录

http://www.xwood.net/