↓ 跳过正文

PHP

菜鸡练手---表白墙

··286 字·1 分钟
冬天了,又到了白色…..又到了恋爱的季节 没有女票的我闲着蛋疼做了一个表白墙程序,放到github冒充项目….

WTS气泡通知插件

··432 字·1 分钟
前阵子蚊子大佬写了个气泡通知,觉得很好玩。 所以就想用在自己的站上,然而扒了半天眼睛都疼了也没干净的扒下来。

一个二维码活码系统思路

··450 字·1 分钟
习惯放图 前阵子无聊写了个简单的活码系统谁知道竟然好多人要买(雾草….我瞎写的啊…)。无意间又看到了老司机写的。人家界面又好看,功能又齐全,真的很厉害。于是准备把自己的那个自行车改装下,不说改的多好起码得能看得过去。

一个简易授权demo

··538 字·2 分钟
在页面中引用,比如: <?php echo'1111'; include ('shouquan.php'); echo'1111'; ?> 授权操作 $url=$_SERVER['SERVER_NAME']; include ('key.php'); $curl = curl_init(); //设置抓取的url curl_setopt($curl, CURLOPT_URL, 'http://localhost/api/api.php'); //设置头文件的信息作为数据流输出 curl_setopt($curl, CURLOPT_HEADER, 0); //设置获取的信息以文件流的形式返回,而不是直接输出。 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //设置post方式提交 curl_setopt($curl, CURLOPT_POST, 1); //设置post数据 $post_data = array( "domain" => "$url", "key" => "$key" ); curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data); //执行命令 $data = curl_exec($curl); //关闭URL请求 curl_close($curl); //echo "$data"; if ($data=='true') { echo '域名验证成功!<br>'; } else { exit(); }`</pre> key文件,用于存储激活码、授权码 <pre>`<?php $key='123456';//输入激活码 ?>`</pre> api文件,接受客户端post请求并返回相应数据 <pre>`<?php $api=$_POST['key']; $domain=$_POST['domain']; $servername = "localhost"; $username = "root"; $password = "root"; $dbname = "selectdata"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } $rs = mysqli_query($conn,"SELECT * FROM data WHERE domain='$domain'"); $aa=mysqli_fetch_array($rs); if ($api==$aa[1]) { echo'true'; } else { echo'false'; } 将程序重要函数/操作/行为添加到shouquan.php中并对其加密混淆,以达到防破解的目的 嗯...暂时就想到这么多。 2018.12.1 客户端代码 <?php //获取不带端口号的域名前缀 $servername = trim($_SERVER['SERVER_NAME']); //获取服务端授权文件校验 $verifyurl = file_get_contents('http://www.toyean.com/zb_users/upload/copyright.php?domain='.$servername); if(!empty($verifyurl)){ echo "已授权!"; //授权成功 }else{ die("未授权!"); //授权失败 } ?>``` 服务端代码 ```<?php</span> <pre>`//获取域名 $domain = $_GET['domain']; //授权域名列表 $Array = array('127.0.0.1','localhost'); //校验结果 echo in_array($domain, $Array) ? 'yes' : ''; ?> 感谢@慕若曦的指点

php笔记--登陆验证和curl

··578 字·2 分钟
登录验证 # <?php include "config/config.php"; $name = $_POST['name'];//post获得用户名表单值 $passowrd = $_POST['password'];//post获得用户密码单值 if ($name && $passowrd){//如果用户名和密码都不为空 $sql = "select * from user where name = '$name' and password='$passowrd'";//检测数据库是否有对应的username和password的sql $result = mysqli_query($conn,$sql);//执行sql @$rows=mysqli_num_rows($result);//返回一个数值 if($rows){//0 false 1 true session_start(); $_SESSION['username'] = $name; header("refresh:0;url=admin/index.php");//如果成功跳转至welcome.html页面 exit; }else{ echo "用户名或密码错误"; echo " <script> setTimeout(function(){window.location.href='login.php';},1000); </script> ";//如果错误使用js 1秒后跳转到登录页面重试; } }else{//如果用户名或密码有空 echo "表单填写不完整"; echo " <script> setTimeout(function(){window.location.href='login.php';},1000); </script>"; //如果错误使用js 1秒后跳转到登录页面重试; }` ## 权限认证 session_start(); if (!isset($_SESSION['username'])) { echo "<script>window.location.href='../login.php';</script>"; } ?> ## CURL $ch = curl_init();//起手式 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $a= curl_exec($ch);//获取输出内容 curl_close($ch);//收工 echo "$a";输出内容