搜索结果
-
阿里云宝塔的FTP使用过程
1 前言买了阿里云服务器之后,然后安装宝塔,接着,使用宝塔提供的FTP功能,整体过程还是比较简单,大致3步:第一步 新建FTP第二步 开放阿里云服务器的端口【21、39000/40000】第三步 改 Pure-Ftpd 配置文件2 步骤1:新建FTP新建个FTP3 步骤2:开放端口开放阿里云服务器的端口【 21、39000/40000 】4 步骤3:修改配置1)首先,在【软件商店】找到PureFTPd软件,然后点击【设置】2)接着,点击【配置修改】,然后直接搜【ForcePassiveIP】,找到之后,把该项的值改为服务器的公网IP地址,如下:3)接着,重启PureFTPd,如下:4)接着,本
-
修改宝塔的网站名称
1 简介当在宝塔中创建多个网站时,有时因为各种原因,可能会导致域名与网站名不同,为了统一,可以进行如下的修改。2 修改1)登录宝塔面板,然后找到宝塔面板所在的数据库信息,文件位于:/www/server/panel/vhost/nginx/default.db,下载default.db文件:2)打开navicat,左上角:文件->新建连接SQLite,连接名随便,数据库文件选择default.db,其他可不填:3)数据库列表找到你新建的数据库,双击打开,里面有个mian数据库,打开找到sites表,打开表,字段name就是网站名称,直接编辑修改、保存即可4)修改后上传default.db
-
禁止网页被复制
document.oncontextmenu=new Function("event.returnValue=false;");document.onselectstart=new Function("event.returnValue=false;");document.onkeydown = function () { if (window.event && window.event.keyCode == 123) { event.keyCode = 0; event.returnValue = false; return false; }}
-
PHP攻击
1 SQL注入1)遭受SQL注入攻击的原因:拼接SQL语句时,没有对用户输入的数据进行特殊字符转义,导致用户输入数据中的特殊符号(如单引号)被当成SQL语句中的符号,破坏了原有SQL语句的含义。2)防御SQL注入的办法(1)调用mysqli_real_escape_string()函数对用户输入的数据进行转义,再拼接到SQL中。(2)使用MySQLi扩展提供的预处理和参数绑定机制,将系统要执行的SQL语句和用户输入的数据分离,从而在根本上解决SQL注入的问题。2 XSS攻击1)遭受XSS攻击的原因:没有对用户输入的数据进行过滤,就直接输出到HTML页面中。如果用户输入的数据中包含HTML标签和
-
MySQLi新闻分页案例
1 分页简介当列表中的记录非常多时,为了方便查询,使用分页功能。2 分页效果3 分页原理利用LIMIT关键字限制SELECT语句查询出的数据SELECT * FROM news LIMIT 0,3; # 查询第1页的3条数据SELECT * FROM news LIMIT 3,3; # 查询第2页的3条数据 # 第1个参数与页码之间存在一定的数学关系。# 第2个参数表示每次查询的最大条数。# LIMIT第1个参数计算方式:LIMIT 第1个参数 = (页码 - 1) * 每页查询的条数4 开发思路定义变量:定义页码和查询条数变量。查询总记录数:查询新闻表中的总记录数,计算出总页数。计算LIMI
-
MySQLi查看新闻案例
1 开发思路添加链接:在新闻列表页中,给每条新闻的标题添加链接。接收id:接收删除新闻id,判断id有效性。获取新闻:根据id查询新闻信息。展示新闻:创建新闻详情页,展示新闻详细信息。2 具体实现1)添加链接:在新闻列表页中,给每条新闻的标题添加链接<a href="detail.php?id=<?php echo $n['id'];?>"> <?php echo $n['title'];?></a>2) 接收id:接收删除新闻id,判断id有效性<?php$id = $_GET['id'] ?? 0;if (!$id) { header(
-
MySQLi删除新闻案例
1 开发思路添加链接:给“删除”按钮添加链接。接收id:接收删除新闻id,判断id有效性。删除新闻:根据id删除新闻。2 具体实现1)添加链接:给“删除”按钮添加链接
-
MySQLi编辑新闻案例
1 开发思路获取新闻:给“编辑”按钮添加链接,接收编辑新闻id,根据id获取新闻信息。显示新闻:在编辑新闻的表单中显示新闻。接收新闻:修改新闻后,接收编辑后的新闻信息并判断。更新新闻:根据id更新新闻。2 具体实现1)获取新闻:给“编辑”按钮添加链接<a href="edit.php?id=<?php echo $n['id'];?>">编辑</a>2)获取新闻:接收编辑新闻id$id = $_GET['id'] ?? 0;if (!$id) { header("Refresh:3;url={$_SERVER['HTTP_REFERER']}"); echo
-
MySQLi新闻列表案例
1 开发思路查询数据:从新闻数据表中的查询全部数据。显示内容:在模板中显示新闻数据。2 新闻列表1)查询数据:创建index.php查询新闻数据include 'Sql.php';$conn = connect('root', '123456', 'news', $error);if (!$conn) { exit($error);}// 新闻列表$sql = 'SELECT n.*,a.name FROM news n LEFT JOIN author a ON n.a_id=a.id';$news = read($conn, $sql, $error, true);include 'add
-
MySQLi增删改查封装函数
1 实现思路数据库连接认证:将连接认证,选择数据库和设置字符集进行封装。封装执行SQL语句函数:将增加、删除、修改、查询的SQL传入函数中,执行并返回结果。封装自动更新函数:将要更新的数据和主键id传入函数中,自动组装SQL进行更新。封装查询数据函数:根据传入的SQL语句或指定的条件去查询一条记录或者多条记录。2 实现代码<?php// 数据库连接认证:将连接认证,选择数据库和设置字符集进行封装;function connect($user, $pass, $dbname, &$error, $host = 'localhost', $port = '3306', $charse
-
MySQLi实现新闻的基本操作
1 开发思路创建表单:编写添加新闻页面。查询作者:将数据表author中的信息读取出来。显示作者:在添加新闻表单中添加下拉列表框,显示作者信息。保存新闻:当用户在添加新闻页面提交表单后,向news表插入数据。2 编写添加新闻页面<div class="add-news col-md-8 col-md-offset-2"> <h1>添加新闻</h1> <form action="insert.php" method="post"> <div class="form-group"> <label for="news_title"&g
-
Linux定时任务crontab实现每秒执行一次2种方法
1 说明Linux的定时任务crontab,实现每秒执行一次命令,有两种办法。2 办法(1) 办法1:利用 crontab 的延时# 原理:通过延时方法 sleep N 来实现每N秒执行一次命令# 操作:输入crontab -e语句,然后添加如下内容,最后 :wq 保存退出* * * * * /usr/bin/curl http://www.test.com* * * * * sleep 5; /usr/bin/curl http://www.test.com* * * * * sleep 10; /usr/bin/curl http://www.test.com* * * * * sleep
-
多文件上传
1 前端<form action="表单提交地址" method="post" enctype="multipart/form-data"> 个人相册: <input type="file" name="photo[]" /> <input type="file" name="photo[]" /> <input type="file" name="photo[]" /> <input type="submit" value="上传" /></form>2 后端$len = count($_FILES['photo']['
-
单文件上传
1 前端<form action="表单提交地址" method="post" enctype="multipart/form-data"> <input type="file" name="file" /> <input type="submit" value="上传" /></form>2 后端if(isset($_FILES['upload'])) { if($_FILES['upload']['error'] !== UPLOAD_ERR_OK){ exit('上传失败!'); } $save = './uploads/' . time(
-
使用opendir()函数和readdir()函数读取目录中的内容
$resource = opendir('./');$file = '';while ($file = readdir($resource)) { echo $file . '<br>';}closedir($resource);
-
使用scandir()函数查看当前目录下的所有内容
$dir_info = scandir('./');foreach ($dir_info as $file) { echo $file . '<br>';}
-
使用GD来制作缩略图
<?php // 1)加载原图$src_image = imagecreatefromjpeg('images/003.jpg');// 2)按比例计算出缩略图的大小$src_w = imagesx($src_image); //获取原始宽$src_h = imagesy($src_image); //高//缩放比例$scale = 0.25;//按照比例计算出小图的大小$dst_w = $src_w * $scale;$dst_h = $src_h * $scale;// 3)制作空白画布$dst_image = imagecreatetruecolor($dst_w, $dst_h)
-
使用GD来制作图片水印
<?php // 1)加载目标图 001.jpg$dst_image = imagecreatefromjpeg('images/001.jpg');// 2)加载水印来源图 005.jpg$src_image = imagecreatefromjpeg('images/005.jpg');//截取相关: 宽62 高105 x224 y152 (左上角是定位点)$src_x = 224;$src_y = 152;$src_w = 62;$src_h = 105;//缩略图 出现在 右下角的位置$dst_w = 62; //缩略图出现在目标图上的宽$dst_h = 105; //高//获取
-
使用GD来制作文字水印
<?php // 1)加载图片为画布:$image = imagecreatefromjpeg('images/003.jpg');// 2)在图片上写字://读取图片的宽和高$width = imagesx($image); //宽度$height = imagesy($image); //高度//文字的宽高$size = 25;$angle = 0;$color = imagecolorallocate($image, 255, 255, 255);$fontfile = __DIR__ . '/SFMono-Regular.otf';$text = 'ABC123';//新的: 获