精华内容
参与话题
问答
  • 图书馆管理系统源码(PHP+MYSQL)

    千次下载 热门讨论 2010-05-12 07:41:44
    php图书馆管理系统(包含程序和说明文档) 通过计算机对图书进行管理,不仅为图书馆的管理注入了新的生机,而且在运营过程节省了大量的人力、物力、财力和时间,提高图书馆的效率,还为图书馆在读者群中树立了一个...
  • php实现用户登录、注册以及修改功能(附加源码~)

    万次阅读 多人点赞 2019-07-24 17:45:32
    用户在注册账户时需要对用户输入的内容做check,需要对密码进行加密设置,登录时也需要进行一系列check。 登录页面 前台页面 前台页面代码denglu.html <!DOCTYPE html> <html>...s...

    本代码实现了php+Mysql数据库 用户的注册和登录功能,希望对大家有帮助,后附加源码,注释详细~

    first要贴上表结构~

    在这里插入图片描述

    登录页面

    前台登录页面denglu.html

    在这里插入图片描述
    在这里插入图片描述

    代码

    <!DOCTYPE html>
    <html>
    <head>
    	<meta charset="utf-8">
    	<title>登录页面</title>
    <script type="text/javascript">
    	//检查用户名是否填写
    	function checkName(){
    		var name = document.getElementById("add_name").value;
    		var spanNode = document.getElementById("user_name");
    		if (name != "") {
    			spanNode.innerHTML = "已填".fontcolor("green");
    			return true;
    		}else{
    			spanNode.innerHTML = "不能为空".fontcolor("red");
    			return false;
    		}
    	}
        //检查密码是否填写
        function checkPassword(){
    		var password = document.getElementById("add_password").value;
    		var spanNode = document.getElementById("user_password");
    		if (password != "") {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "请输入密码".fontcolor("red");
    				return false;
    			}
    	}
    	//点击登录时进行检查
    	function checkForm(){
    		var name = checkName();
    		var password = checkPassword();
    		if (name && password) {
    			return true;
    		}else{
    			return false;
    		}
    	}
    </script>
    </head>
    <style type="text/css">
    	.wrapper{
    
            text-align: center;
    		width:1000px;
    	    margin:20px auto;
    	}
    	h2{
    	background-color:#7CCD7C;
    	margin:0px;
    	text-align:center;
        }
        .add{
        	margin:20px auto;
        }
        .add labal{
    		text-align: center;
    		background-color: 	#FFB6C1;
    		color: #fff;
    		margin:20px auto;
    	}
    	.btn { 
        	background-color: #008CBA;;
        	border-radius:8px;
        	color: white;
        	padding: 6px 93px;
        	text-align: center;
        	text-decoration: none;
        	display: inline-block;
        	font-size: 14px;
        }
        .error {
        	color: #FF0000;
        }
    </style>
    <body>
    <div class="wrapper">
    <h2>用户管理系统</h2>
    <div class="add">
    <labal>登录系统</labal>
    </div>
        <div class="add">
        <form method="post" action="denglu.php" onsubmit="return checkForm()">
    	<labal>用户名:</labal> <input type="text" name="add_name" id="add_name" placeholder="请输入用户名">
    	<span id="user_name" class="error">*</span><br><br>
    	<labal>密码:</labal>&nbsp&nbsp&nbsp&nbsp<input type="password" name="add_password" id="add_password"placeholder="请输入密码">
    	<span id="user_password" class="error">*</span><br><br>
    	<input class="btn" type="submit" value="登录">
    	<br>
    	</form>
    	<a href="zhuce.html">立即注册</a>
        </div>
    </div>
    </body>
    </html>
    

    后台处理页面代码denglu.php

    代码

    <?php
    require("./MysqlData.php");
    
    $user_name = $_POST['add_name'];
    $user_password = $_POST['add_password'];
    $password = md5($user_password);
    $data = new MysqlData;
    $sql = $data->select_user($user_name,$password);
    $res = $data->sqlRun($sql);
    //若账号密码错误
    if ($res->num_rows == 0) {
    	//释放$res占用的内存
    	mysqli_free_result($res);
    	//关闭数据库连接
    	$data->closeConn();
    	//提示输入正确的账号
    	echo "<script type='text/javascript'>";
    	echo "alert('账号密码错误,请重新输入');";
    	echo "history.back();";
    	echo "</script>"; 
    }
    //若账号密码正确
    else{
    	//获取id字段
    	$id = mysqli_fetch_object($res)->id;
    	//释放$res占用的内存
    	mysqli_free_result($res);
    
    	//关闭数据库连接
    	$data->closeConn();
    	//将用户数据加入cookies
    	setcookie("id",$id);
    	setcookie("password","TRUE");
    	header("Location:main.php");
    }
    
    $data->closeConn();
    ?>
    
    

    登录跳转页面main.php

    在这里插入图片描述
    代码

    <?php
    require("./MysqlData.php");
    /*检查cookie中的password变量是否不等于true,是的话表示尚未登录网站,就重定向到denglu.html页面*/
    $id = $_COOKIE["id"];
    $password = $_COOKIE["password"];
    if ($password != "TRUE") {
    	header("location:denglu.html");
    	exit();
    }
    //创建对象
    $data = new MysqlData;
    $sql = "SELECT * FROM users WHERE id = ".$id.";";
    $row = $data->getRow($sql);
    // echo $sql;
    $data->closeConn();
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    	<meta charset="utf-8">
    	<title>登录成功页面</title>
    </head>
     <style type="text/css">
     	.wrapper{
    
             text-align: center;
     		width:1000px;
     	    margin:20px auto;
     	}
     	h2{
     	background-color:#7CCD7C;
     	margin:0px;
     	text-align:center;
         }
         .my{
         	margin:20px auto;
         }
         .my labal{
         	text-align: center;
     		background-color: 	#FFB6C1;
     		color: #fff;
     		margin:20px auto;
         }
     </style>
    <body>
    <div class="wrapper">
    <h2>用户管理系统</h2>
    <div class="my">
    <labal>我的资料</labal>
    </div>
    <labal>用户名:</labal><input type="text" value="<?php echo $row['name'] ?>" readonly="readonly"><br><br>
    <labal>性别:</labal>
    <input type="radio"value="0" <?php if ($row['sex'] == "0") echo "checked"?>><input type="radio"value="1" <?php if ($row['sex'] == "1") echo "checked"?>><br><br>
    <labal>年龄:</labal><input type="text" value="<?php echo $row['age'] ?>" readonly="readonly"><br><br>
    <labal>邮箱:</labal><input type="text" value="<?php echo $row['email'] ?>" readonly="readonly"><br><br>
    <a href="modify.php">修改我的资料</a>
    </div>
    
    </body>
    </html>
    

    修改资料页面modify.php

    在这里插入图片描述
    代码

    <?php
    /*检查cookie中的password变量是否不等于true,是的话表示尚未登录网站,就重定向到denglu.html页面*/
    $id = $_COOKIE["id"];
    $password = $_COOKIE["password"];
    if ($password != "TRUE") {
    	header("location:denglu.html");
    	exit();
    }
    else{
    	require("./MysqlData.php");
    	$id = $_COOKIE["id"];
    	//连接数据库
    	$data = new MysqlData;
    
    	//执行sql查询我的资料
    	$sql = "SELECT *  FROM users WHERE id = ".$id.";";
    	$row = $data->getRow($sql);
    	//关闭数据库
    	$data->closeConn();
    }
    ?>
    
    <!DOCTYPE html>
    <html>
    <head>
    	<meta charset="utf-8">
    	<title></title>
    <script type="text/javascript">
    		//检查姓名
    		function checkName(){
    			var inputNode = document.getElementById("edit_name");
    			var spanNode = document.getElementById("user_name");
    			var nameLength = document.getElementById("edit_name").value.length;
    			//获取输入框的内容
    			var content = inputNode.value;
    			// 检测名字是否只包含字母跟空格
    			var reg = /^[a-zA-Z ]*$/;
    			if(content==""){
    				spanNode.innerHTML = "不能为空".fontcolor("red");
    				return false;
    			}
    			if (nameLength > 15) {
    				spanNode.innerHTML = "姓名长度过长".fontcolor("red");
    				return false;
    			}
    			if (reg.test(content)){
    				spanNode.innerHTML = "正确".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "只允许字母跟空格".fontcolor("red");
    				return false;
    			}
    		}
    		//检查密码
    		function checkPassword(){
    			var password = document.getElementById("edit_password");
    			var passwordLength = document.getElementById("edit_password").value.length;
    			var content = password.value;
    			var spanNode = document.getElementById("user_password");
    			if (passwordLength > 30) {
    				spanNode.innerHTML = "密码过长".fontcolor("red");
    				return false;
    			}
    			if (content != "") {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "密码不能为空".fontcolor("red");
    				return false;
    			}
    		}
    		//检查再次输入的密码
    		function checkUpassword(){
    			var password = document.getElementById("edit_password").value;
    			var upassword = document.getElementById("upassword").value;
    			var spanNode = document.getElementById("uupassword");
    			if (upassword != password) {
    				spanNode.innerHTML = "密码不一致".fontcolor("red");
    				return false;
    			}
    			if (upassword != "") {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "请再次输入密码".fontcolor("red");
    				return false;
    			}
    			
    		}
    		//检查性别
    		function checkSex(){
    			// var inputNode = document.getElementById("add_sex");
    			var spanNode = document.getElementById("user_sex");
    			// var content = inputNode.value;
    			//检查不能为空
    			if (!document.getElementById("man").checked && !document.getElementById("women").checked) {
    				spanNode.innerHTML = "必填".fontcolor("red");
    				return false;
    			}else{
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}
    		}
    		//检查年龄
    		function checkAge(){
    			var age = document.getElementById("edit_age").value;
    			var spanNode = document.getElementById("user_age");
    			//检查年龄是否在1-120内
    			var reg = /^(?:[1-9][0-9]?|1[01][0-9]|120)$/;
    			if (reg.test(age)) {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "年龄不合法".fontcolor("red");
    				return false;
    			}
    		}
    		//检查邮箱
    		function checkEmail(){
    			var email = document.getElementById("edit_email").value;
    		    var spanNode = document.getElementById("user_email");
    		    //验证邮箱的正则
    		    var reg = /^[a-z0-9]\w+@[a-z0-9]+(\.[a-z]{2,3}){1,2}$/i;
    		    if(email==""){
    		    	spanNode.innerHTML = "不能为空".fontcolor("red");
    		    	return false;
    		    }
    		    if (reg.test(email)){
    		    	spanNode.innerHTML = "正确".fontcolor("green");
    		    	return true;
    		    }else{
    		    	spanNode.innerHTML = "邮箱格式不正确".fontcolor("red");
    		    	return false;
    		    }
    		}
    		//提交form表单时进行检查
    		function checkForm(){
    			var add_name = checkName();
    			var add_sex = checkSex();
    			var add_age = checkAge();
    			var add_email = checkEmail();
    			var add_password = checkPassword();
    			var upassword = checkUpassword();
    			if (add_name && add_sex && add_age && add_email && add_password && upassword) {
    				return true;
    			}else{
    				return false;
    			}
    		}
    	</script>
    </head>
    <style type="text/css">
    	.wrapper{
    
            text-align: center;
    		width:1000px;
    	    margin:20px auto;
    	}
    	h2{
    	background-color:#7CCD7C;
    	margin:0px;
    	text-align:center;
        }
        .update{
        	margin:20px auto;
        }
        .update labal{
        	text-align: center;
    		background-color: 	#FFB6C1;
    		color: #fff;
    		margin:20px auto;
        }
       
        .btn { 
        	background-color: #008CBA;;
        	border-radius:8px;
        	color: white;
        	padding: 10px 20px;
        	text-align: center;
        	text-decoration: none;
        	display: inline-block;
        	font-size: 14px;
        }
        .error {
            color: #FF0000;
        }
    </style>
    <body>
    <div class="wrapper">
    	<h2>用户管理系统</h2>
    	<div class="update">
    	<labal>修改我的资料</labal>
    	</div>
    <div>
     <form method="post" action="update.php" align="center" onsubmit="return checkForm()">
         ID:&nbsp&nbsp&nbsp<input type="text" name="id" value="<?php echo $row['id'] ?>" readonly="readonly"><br><br>
    
         <labal>用户名:</labal><input type="text" id="edit_name" name="edit_name" value="<?php echo $row['name'] ?>"><span id="user_name" class="error">*</span><br><br>
    
         <labal>密码:</labal>&nbsp&nbsp&nbsp&nbsp<input type="password" name="edit_password" id="edit_password" placeholder="请设置密码">
    	<span id="user_password" class="error">*</span><br><br>
    
    	<labal>确认密码:</labal><input type="password" name="upassword" id="upassword" placeholder="请再次输入密码">
    	<span id="uupassword" class="error">*</span><br><br>
    
         <labal>性别:</labal><input type="radio" id="man" name="sex" value="0"
                             <?php if(isset($row['sex']) && $row['sex']=="0") echo "checked";?>><input type="radio" id="women" name="sex" value="1"
                             <?php if(isset($row['sex']) && $row['sex']=="1") echo "checked";?>><span id="user_sex" class="error">*</span><br><br>
    
         <labal>年龄:</labal><input type="text" id="edit_age" name="edit_age" value="<?php echo $row['age'] ?>"><span id="user_age"></span><br><br>
    
         <labal>邮箱:</labal><input type="text" id="edit_email" name="edit_email" value="<?php echo $row['email'] ?>"><span id="user_email" class="error">*</span><br><br>
         
         <input class="btn" type="submit" name="submit" value="确认修改">
      </form>
    </body>
    </html>
    

    后台处理update.php

    代码

    <?php
    /*检查cookie中的password变量是否不等于true,是的话表示尚未登录网站,就重定向到denglu.html页面*/
    $id = $_COOKIE["id"];
    $password = $_COOKIE["password"];
    if ($password != "TRUE") {
    	header("location:denglu.html");
    	exit();
    }else{
    	require("./MysqlData.php");
        $u_id = $_POST['id'];
    	$name = $_POST['edit_name'];
    	$u_password = $_POST['edit_password'];
    	$sex = $_POST['sex'];
    	$age = $_POST['edit_age'];
    	$email = $_POST['edit_email'];
    	//创建对象,连接数据库
    	$data = new MysqlData;
    
    	//执行更新sql语句
    	$sql = "UPDATE users SET name = '".$name."',password = '".$u_password."',sex = ".$sex.",age = ".$age.",email = '".$email."' WHERE id = ".$u_id.";";
    	$res = $data->sqlRun($sql);
    	$data->closeConn();
    	header("Location:main.php");
    }
    
    

    注册页面

    前台页面zhuce.html

    在这里插入图片描述
    在这里插入图片描述
    代码

    <!DOCTYPE html>
    <html>
    <head>
    	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    	<title>注册新用户</title>
    	<script type="text/javascript">
    		//检查姓名
    		function checkName(){
    			var inputNode = document.getElementById("add_name");
    			var spanNode = document.getElementById("user_name");
    			var nameLength = document.getElementById("add_name").value.length;
    			//获取输入框的内容
    			var content = inputNode.value;
    			// 检测名字是否只包含字母跟空格
    			var reg = /^[a-zA-Z ]*$/;
    			if(content==""){
    				spanNode.innerHTML = "不能为空".fontcolor("red");
    				return false;
    			}
    			if (nameLength > 15) {
    				spanNode.innerHTML = "姓名长度过长".fontcolor("red");
    				return false;
    			}
    			if (reg.test(content)){
    				spanNode.innerHTML = "正确".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "只允许字母跟空格".fontcolor("red");
    				return false;
    			}
    		}
    		//检查密码
    		function checkPassword(){
    			var password = document.getElementById("add_password");
    			var passwordLength = document.getElementById("add_password").value.length;
    			var content = password.value;
    			var spanNode = document.getElementById("user_password");
    			if (passwordLength > 30) {
    				spanNode.innerHTML = "密码过长".fontcolor("red");
    				return false;
    			}
    			if (content != "") {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "密码不能为空".fontcolor("red");
    				return false;
    			}
    		}
    		//检查再次输入的密码
    		function checkUpassword(){
    			var password = document.getElementById("add_password").value;
    			var upassword = document.getElementById("upassword").value;
    			var spanNode = document.getElementById("uupassword");
    			if (upassword != password) {
    				spanNode.innerHTML = "密码不一致".fontcolor("red");
    				return false;
    			}
    			if (upassword != "") {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "请再次输入密码".fontcolor("red");
    				return false;
    			}
    			
    		}
    		//检查性别
    		function checkSex(){
    			// var inputNode = document.getElementById("add_sex");
    			var spanNode = document.getElementById("user_sex");
    			// var content = inputNode.value;
    			//检查不能为空
    			if (!document.getElementById("man").checked && !document.getElementById("women").checked) {
    				spanNode.innerHTML = "必填".fontcolor("red");
    				return false;
    			}else{
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}
    		}
    		//检查年龄
    		function checkAge(){
    			var age = document.getElementById("add_age").value;
    			var spanNode = document.getElementById("user_age");
    			//检查年龄是否在1-120内
    			var reg = /^(?:[1-9][0-9]?|1[01][0-9]|120)$/;
    			if (reg.test(age)) {
    				spanNode.innerHTML = "已填".fontcolor("green");
    				return true;
    			}else{
    				spanNode.innerHTML = "年龄不合法".fontcolor("red");
    				return false;
    			}
    		}
    		//检查邮箱
    		function checkEmail(){
    			var email = document.getElementById("add_email").value;
    		    var spanNode = document.getElementById("user_email");
    		    //验证邮箱的正则
    		    var reg = /^[a-z0-9]\w+@[a-z0-9]+(\.[a-z]{2,3}){1,2}$/i;
    		    if(email==""){
    		    	spanNode.innerHTML = "不能为空".fontcolor("red");
    		    	return false;
    		    }
    		    if (reg.test(email)){
    		    	spanNode.innerHTML = "正确".fontcolor("green");
    		    	return true;
    		    }else{
    		    	spanNode.innerHTML = "邮箱格式不正确".fontcolor("red");
    		    	return false;
    		    }
    		}
    		//提交form表单时进行检查
    		function checkForm(){
    			var add_name = checkName();
    			var add_sex = checkSex();
    			var add_age = checkAge();
    			var add_email = checkEmail();
    			var add_password = checkPassword();
    			var upassword = checkUpassword();
    			if (add_name && add_sex && add_age && add_email && add_password && upassword) {
    				return true;
    			}else{
    				return false;
    			}
    		}
    	</script>
    </head>
    <style type="text/css">
    	.wrapper{
    
            text-align: center;
    		width:1000px;
    	    margin:20px auto;
    	}
    	h2{
    	background-color:#7CCD7C;
    	margin:0px;
    	text-align:center;
        }
        .add{
        	margin:20px auto;
        }
    	.add labal{
    		text-align: center;
    		background-color: 	#FFB6C1;
    		color: #fff;
    		margin:20px auto;
    	}
    	.btn { 
        	background-color: #008CBA;;
        	border-radius:8px;
        	color: white;
        	padding: 6px 93px;
        	text-align: center;
        	text-decoration: none;
        	display: inline-block;
        	font-size: 14px;
        }
        .error {
        	color: #FF0000;
        }
    </style>
    <body>
    <div class="wrapper">
    <h2>用户管理系统</h2>
    <div class="add">
    <labal>注册新用户</labal>
    </div>
        <div>
        <form method="post" action="zhuce.php" onsubmit="return checkForm()">
    	<labal>用户名:</labal> <input type="text" name="add_name" id="add_name" placeholder="请设置用户名">
    	<span id="user_name" class="error">*</span><br><br>
    
    	<labal>密码:</labal>&nbsp&nbsp&nbsp&nbsp<input type="password" name="add_password" id="add_password" placeholder="请设置密码">
    	<span id="user_password" class="error">*</span><br><br>
    
    	<labal>确认密码:</labal><input type="password" name="upassword" id="upassword" placeholder="请再次输入密码">
    	<span id="uupassword" class="error">*</span><br><br>
    	
    	<labal>性别:</labal><input type="radio" name="add_sex" id="man" value="0"><input type="radio" name="add_sex" id="women" value="1"><span id="user_sex" class="error">*</span>
    	<br><br> 
    	<labal>年龄:</labal><input type="text" name="add_age" id="add_age"placeholder="请输入年龄"><span id="user_age"></span><br><br>
    	<labal>邮箱:</labal><input type="text" name="add_email" id="add_email" placeholder="请输入邮箱">
    	<span id="user_email" class="error">*</span><br><br>
    	<input class="btn" type="submit" value="注册">
        </form>
        </div>
    </div>
    </body>
    </html>
    

    后台处理zhuce.php

    在这里插入图片描述
    代码

    <?php
    require("./MysqlData.php");
    
    $name = $_POST["add_name"];
    $password = $_POST["add_password"];
    $upassword = $_POST["upassword"];
    $sex = $_POST["add_sex"];
    $age = $_POST["add_age"];
    $email = $_POST["add_email"];
    
    //md5加密
    $user_password = md5($password);
    $zhuce_password = md5($upassword);
    
    $data = new MysqlData;
    $sele_sql = "SELECT * FROM users WHERE name = '".$name."';";
    $res = $data->sqlRun($sele_sql);
    // echo $sele_sql;
    //若账号被使用
    if ($res->num_rows != 0) {
    	//释放res内存
    	mysqli_free_result($res);
    	//提示用户已经有人使用
    	echo "<script type='text/javascript'>";
    	echo "alert('此账号已经有人使用');";
    	echo "history.back();";
    	echo "</script>";
    }//若账号没人使用
    else{
    	//释放$res占用的内存
    	mysqli_free_result($res);
    	//
    	$zhuce_sql = $data->zhuceData($name,$user_password,$sex,$age,$email);
    	$res = $data->sqlRun($zhuce_sql);
    }
    //关闭数据库连接
    $data->closeConn();
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    	<meta charset="utf-8">
    	<title>注册成功页面</title>
    </head>
     <style type="text/css">
     	.wrapper{
    
             text-align: center;
     		width:1000px;
     	    margin:20px auto;
     	}
     	h2{
     	background-color:#7CCD7C;
     	margin:0px;
     	text-align:center;
         }
         .my{
         	margin:20px auto;
         }
         .my labal{
         	text-align: center;
     		background-color: 	#FFB6C1;
     		color: #fff;
     		margin:20px auto;
         }
     </style>
    <body>
    <div class="wrapper">
    <h2>用户管理系统</h2>
    <div class="my">
    <labal>我的注册信息</labal>
    </div>
    <labal>用户名:</labal><input type="text" value="<?php echo $name ?>" readonly="readonly"><br><br>
    <labal>性别:</labal>
    <input type="radio"value="0" <?php if ($sex == "0") echo "checked"?>><input type="radio"value="1" <?php if ($sex == "1") echo "checked"?>><br><br>
    <labal>年龄:</labal><input type="text" value="<?php echo $age ?>" readonly="readonly"><br><br>
    <labal>邮箱:</labal><input type="text" value="<?php echo $email ?>" readonly="readonly"><br><br>
    <a href="denglu.html">返回登录页面</a>
    </div>
    </body>
    </html>
    
    
    
    
    展开全文
  • 个人博客-wordpress-php源码完整版,wordpress平台
  • 一个简单的php源码

    2014-03-18 13:55:13
    一个简单的php源码,适合新手研究,巩固知识。
  • PHP7.2源码安装

    千次阅读 2019-05-07 11:03:07
    一、下载php7.2版本的安装包 1.下载 2.上传到服务器的root目录 pwd:查看当前目录 ll:查看当前目录下的文件 二.解压 tar -xjvfphp-7.2.18.tar.bz 三.configure(编译) cd php-7.2.18 ./configure --...

    一、下载php7.2版本的安装包

    1.下载

    2.上传到服务器的root目录

    pwd:查看当前目录

    ll:查看当前目录下的文件

    二.解压

    tar -xjvf php-7.2.18.tar.bz

    三.configure(编译)

    cd php-7.2.18

    ./configure --prefix=/home/work/study

     

    四.make(构建)

    make

    make test

    五.make install

    linux对php操作的一些命令

    cd php ——进入到php

    cd ..——进入上级目录

    .bin/php -m  查看它的扩展

    vi test.php ——创建一个test.php文件夹

    <?php

    echo time();

    :wq——保存并退出

    按esc到命令模式

    按i编辑文本模式

    1、:w   保存文件但不退出vi 

    2、:w file 将修改另外保存到file中,不退出vi 

    3、:w!  强制保存,不推出vi

    4.、:wq  保存文件并退出vi 

    5、:wq! 强制保存文件,并退出vi

    6、:q 不保存文件,退出vi

    7、:q!不保存文件,强制退出vi 

    ./bin/php test.php ——执行

    六、简化php执行命令

    1.编辑根目录下的 .bash_profile文件(vi ~/.bash_profile)

    2.source ~/.bash_profile

    3.php -v

    测试

    总结:php源码安装的时候会遇到哪些坑?

    1.gcc autoconfig——如果没有编译的时候系统会提示需要装这两个软件

    2.编译后的文件,没有php.ini文件

    cp php.ini-development /home/work/study/ect/——复制到编译后的文件夹中

    mv php.ini-development php.ini——改名字

    改了php.ini的配置,不生效

    php -i |grep php.ini  

    所以将php.ini移动到lib下面

    mv ./etc/php.ini ./lib

    展开全文
  • 下载PHP源码

    2019-07-09 13:54:19
    下载PHP源码包寄语使用wget下载PHP源码包 寄语 大家好,我是一名PHP程序员。在这里分享一些自己学习的心得,和一些知识点的理解,以及学习中遇到的一些问题 使用wget下载PHP源码包 wget -O ...

    寄语

    你好,我是一名PHPer。在这里分享一些自己学习的心得,和一些知识点的理解,以及学习中遇到的一些问题

    使用wget下载PHP源码包

    	wget -O php-7.1.4.tar.gz http://hk1.php.net/get/php-7.1.4.tar.gz/from/this/mirror
    

    如果是纯净的CentOS 可能需要安装wget,可以直接使用yum来安装wget

    yum -y install wget
    

    建议大家将yum源更换为阿里云的,这里有具体的操作步骤,请点击下方地址
    https://www.jianshu.com/p/239a32b9c04d

    本人所有文章都是学习过程中自己总结,有用词不严谨的地方,希望大家谅解!谢谢

    展开全文
  • PHP 7.2 源码

    2019-03-07 17:12:09
    php7.2 最新版源码包,本人亲自使用,没问题在放在上面供大家使用
  • php论坛源码

    2019-03-19 14:16:41
    discuz论坛源码
  • php电影网站源码

    2018-05-16 18:55:04
    php建站源码,美观大方带采集功能,可解压学习一下也可直接建站 1.环境要求:php7 支持伪静态 2.将源码上传到网站根目录 3.http://你的域名/install 安装 后台地址:http://你的域名/admin 账号密码:admin admin ...
  • 用VS2015(vs14)开发PHP7扩展(转+)

    千次阅读 2016-04-05 09:12:29
    本文基于... 感谢大圣的笑博主 开发前准备工作: VS(我用的2013) ...搭载了php运行环境的IIS7.5 (用来测试) php编译后的程序和编译前的源码,我用的当前最新版本7.0.5(下载地
    开发前准备工作:
    

    VS(我用的2013)

    Cygwin(下载地址:http://www.cygwin.com/)

    搭载了php运行环境的IIS7.5 (用来测试)

    php编译后的程序和编译前的源码,我用的当前最新版本7.0.5(下载地址:http://windows.php.net/download#php-7.0)


    编译后的程序路径:E:\vs_c++\test\phpext\php-7.0.5-src

    编译前的源码路径:E:\vs_c++\test\phpext\php-7.0.5-nts-Win32-VC14-x86\

    步骤:

    1.安装Cygwin

     

    从网络安装

     

     

     

    默认安装C盘

    下载缓存随意,安装结束记得删掉,我是放在桌面的

    在中国,就选http://mirrors.163.com,后面一直下一步到结束。

    2.找到php源码目录我的是(E:\vs_c++\test\phpext\php-7.0.5-src,以下用这个代表源码目录),打开E:\vs_c++\test\phpext\php-7.0.5-src\ext\ext_skel_win32.php

    这里改成你的cygwin安装目录,我的就是C盘,所以不用改。

    3.运行cmd,进入E:\vs_c++\test\phpext\php-7.0.5-src\ext\里,运行php.exe  ext_skel_win32.php --extname=test,这里test代表你的php扩展名


    打开E:\vs_c++\test\phpext\php-7.0.5-src\ext就会看到一个test文件夹,这个就是你的扩展。

     4.打开VS选择“文件”--“新建”--“从现有代码创建目录”

    选择C++

    这里选择你的php扩展文件夹路径,并且给项目命名

    选择“使用 visual studio”,项目类型选择“动态链接库(DLL)项目”,后面一直默认下一步一直到完成。

    5.刚开始打开会有很多错误,我们接下来开始配置项目。

    先把项目解决方案配置改为Release

    右键项目属性,C/C++,常规,附加包含目录,编辑

    加入以下几个php源码目录(实际目录以开发者自己的目录为准):

    E:\vs_c++\test\phpext\php-7.0.5-src

    E:\vs_c++\test\phpext\php-7.0.5-src\main

    E:\vs_c++\test\phpext\php-7.0.5-src\TSRM

    E:\vs_c++\test\phpext\php-7.0.5-src\Zend


    右键项目属性,C/C++,预处理器,预处理器定义,编辑,加入以下变量:

    ZEND_DEBUG=0

    PHP_EXTENSION

    PHP_WIN32

    ZEND_WIN32

    HAVE_TEST=1(这里红色部分,要改成你的扩展名称,不改成你的扩展名,php会不识别

    COMPILE_DL_TEST这里红色部分,要改成你的扩展名称,不改成你的扩展名,php会不识别

    ZTS(这一个变量加上是开启线程安全,不加是关闭线程安全 这个根据你编译的php是不是线程安全来判断是否加入此变量 ps:我就在这上面吃亏了没对应上导致php不识别扩展

    生成解决方案,错误信息显示找不到“config.w32.h”,在源代码文件目录里搜索“config.w32.h”,在E:\vs_c++\test\phpext\php-7.0.5-src\win32\build\文件夹里找到“config.w32.h.in”,将这个文件复制到E:\vs_c++\test\phpext\php-7.0.5-src\main\文件夹里,去掉后面的“.in”

    再次生成解决方案,显示错误信息LNK1120

    错误 7 error LNK1120: 5 个无法解析的外部命令 E:\vs_c++\test\phpext\php-7.0.5-src\ext\test\Release\phptest.dll 1 1 phptest

    右键项目属性,连接器,输入,附加依赖项,编辑,将php5.lib的路径放进去(这个文件在php编译后的程序文件夹里,根目录的dev文件夹里)


    注意:为了让扩展能和php运行环境匹配,要根据你的php运行环境的编译版本(php7.0.5是VC14编译的),在E:\vs_c++\test\phpext\php-7.0.5-src\main\文件夹里的config.w32.h文件里加上:

    #define PHP_COMPILER_ID "VC14" 

     

    打开E:\vs_c++\test\phpext\php-7.0.5-src\ext\test\test.c

    找到这一段代码:

    复制代码
    PHP_FUNCTION(confirm_test_compiled)
    {
        char *arg = NULL;
        int arg_len, len;
        char *strg;
    
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) {
            return;
        }
    
        len = spprintf(&strg, 0, "Congratulations! You have successfully modified ext/%.78s/config.m4. Module %.78s is now compiled into PHP.", "test", arg);
        RETURN_STRINGL(strg, len, 0);
    }
    复制代码

    confirm_test_compiled改成test_echo

    再找到这一段代码:

    const zend_function_entry test_functions[] = {
        PHP_FE(confirm_test_compiled,    NULL)        /* For testing, remove later. */
        PHP_FE_END    /* Must be the last line in test_functions[] */
    };

    将里面的confirm_test_compiled也改成test_echo

    生成解决方案,在项目根目录的Release文件夹里找到自己的php扩展phptest.dll,复制到php的ext文件夹里,在php.ini里配置上:

    extension=phptest.dll

    重启IIS,新建一个站点,在里面新建一个test.php文件

    <?php 
    echo test_echo("123");

    运行得到结果:

    这个test_echo函数,就是我们自己的自定义函数了,你也可以根据需求,开发自己的扩展来提高php的性能。


    本文 转自 大圣的笑 http://www.cnblogs.com/mahatmasmile/p/4527495.html


    展开全文
  • 简单的图书馆管理PHP源码(自己写的),包含install部分
  • javaWeb图书馆管理系统源码mysql版本

    千次下载 热门讨论 2014-03-31 11:01:25
    图书馆管理系统主要的目的是实现图书馆的信息化管理。图书馆的主要业务就是新书的借阅和归还,因此系统最核心的功能便是实现图书的借阅和归还。此外,还需要提供图书的信息查询、读者图书借阅情况的查询等功能。项目...
  • [PHP+MySQL]图书馆管理系统前后台全部代码(附带数据库脚本),可添加、编辑、删除图书 和分类,具有两级用户权限
  • 数据库课程设计实验报告--图书馆管理系统

    万次阅读 多人点赞 2018-03-08 14:03:13
    一、系统平台 开发工具:Eclipse java Mars 数据库 MySQL server,Navicat可视化工具 操作系统:win10 ... 提取码:4y44 ... 图书信息管理系统数据库用以收集、存储书籍信息、人员(读者、图书管理员...
  • 图书馆管理系统

    千次阅读 2016-02-27 08:29:56
    大三时候用delphi写的一个图书馆管理系统,开发图书馆管理系统需要用到Delphi7,SQL Server 2008. 功能: 图书馆服务系统(查询图书记录,借阅图书,归还图书,修改密码,分类查找) 图书馆管理系统(修改图书...
  • 图书馆管理系统 实验目的: 1、掌握面向对象分析与设计的思想与方法。 2、使用UML进行系统的面向对象分析与设计:用例图,类图,顺序图,状态图,活动图,组件图等。 3.系统功能用Java或...
  • 大一java图书馆管理系统课程设计

    万次阅读 多人点赞 2017-09-18 16:24:15
    大一java图书馆管理系统课程设计代码仅供参考!!!仅供参考!!!效果图如下管理员用户名:123456 密码123456下载地址:http://download.csdn.net/download/qq_36326947/9995208...
  • java图书馆管理系统

    千次下载 热门讨论 2009-07-17 19:35:44
    图书馆管理系统图书馆管理工作中不可缺少的部分,它对于图书馆的管理者和使用者都非常重要,所以图书馆管理系统应该为管理者与读者提供充足的信息和快捷的数据处理手段,但长期以来,人们使用传统的人工方式或性能...
  • PHP+MySql实现简易图书馆管理系统

    千次阅读 热门讨论 2020-01-12 14:34:16
    图书馆管理系统 项目名称:图书借阅系统 此项目用PHP+MySql实现 项目总体功能描述:此项目为模拟图书馆的借阅系统,通过该系统可以查询目前图书的基本信息,图书是否在或者图书被谁借走,查询个人基本信息,...
  • 图书管理系统(Java MySQL)

    万次阅读 多人点赞 2018-12-22 15:48:09
    (完整代码+实训报告): https://download.csdn.net/download/qq_35793285/10896342 (完整代码): ... ...管理员登录 图书借阅信息管理 图书信息管理 管理员更改密码 退出系统 二,工具 E...
  • 图书馆管理系统-MFC写的-非常详细-完善

    千次下载 热门讨论 2011-04-28 19:43:55
    图书管理系统实现了以下功能:  实现图书的入库与入库退货管理。  实现图书的库存盘点管理。  实现图书的定价、调价管理。  实现图书的销售、销售退货管理。  实现图书的入库查询、入库退货查询、图书...
  • 图书馆管理系统UML各种图

    万次阅读 多人点赞 2017-12-13 11:29:12
    1用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。  【用途】:帮助开发团队以一种可视化的方式理解系统的功能...如下是图书管理系统中管理员用例图:
  • 图书馆管理系统前后台全部代码(附带数据库文件),可对图书和读者进行搜索和增删改查等操作。功能不是很全请谨慎下载。具体请看http://blog.csdn.net/leslie___cheung/article/details/79074383
  • 图书馆管理系统设计说明书

    万次阅读 2014-11-06 12:59:28
    图书馆信息管理系统 软件设计说明书 文档编号:QY2014007-LY7 文档信息:图书馆信息管理系统软件设计说明书 文档类别:管理文档 密 级:机密 版本信息:1.0 建立日期:2014-05-20   创 建 人: 审 核...
  • 采用Java+前端+servlet+mysql设计的图书馆管理系统。 源代码:https://download.csdn.net/download/lk888666/11892227 可以实现注册发送手机验证码,借书发送邮箱通知。 欢迎访问个人博客点击访问 可回答问题...
  • 图书馆系统搞开源软件的方式发展是不会成功的。成功的开源软件项目主要集中在工具、系统等基础平台方面,而很少在应用领域获得大的成功,原因很简单,开源软件的发展需要一个生存生态,通过生态环境的运作来获得可...
  • 图书馆管理系统 (C语言)

    千次阅读 多人点赞 2018-05-07 00:31:02
    图书馆管理系统 (C语言) 功能框架如下 管理系统主要使用了以下操作 单向链表的创建、增添、删除、遍历、查找、排序。 链表写入文件、从文件读取数据至链表。 密码的隐式输入、输入检测。 注册生成随机...
  • java小型图书馆管理系统

    万次阅读 多人点赞 2018-01-08 21:16:05
     根据需求,建立了一个BookMgr类,该类为实现小型图书馆的各个需求。为了和用户有一个良好的交互,根据需求且满足要求中的隐藏条件,先命名了交互...System.out.println("欢迎使用图书馆管理系统");   Syst
  • 图书馆管理系统——模板建立

    万次阅读 热门讨论 2015-06-05 17:01:09
    图书馆管理系统也进行了有一段时日了,前段时间一直在进行画图,直到前天才真正的把图画完,当然后期肯定还有需要完善的地方。现阶段,我们就开始了界面的搭建,这个对于我们来说既是熟悉的,同时也是具有挑战性的。...
  • 图书馆管理系统需求规格说明书

    万次阅读 多人点赞 2014-11-06 13:07:14
    青院图书馆信息管理系统 软件需求规格说明书 文档编号:QY2014007-LY7 文档信息:图书馆信息管理系统软件需求规格说明书 文档类别:管理文档 密 级:机密 版本信息:1.0 建立日期:2014-05-20   创 建 人: 审 ...

空空如也

1 2 3 4 5 ... 20
收藏数 280,851
精华内容 112,340
关键字:

php源码