zoukankan      html  css  js  c++  java
  • PHP拾贝

    $_SERVER['DOCUMENT_ROOT']指向了web服务器文档树的根。(E:/wamp/www/)

    **********************************************************************************************************************************************

    !defined('CURSCRIPT') && define('CURSCRIPT', ''); 的含义是:如果CURSCRIPT 没定义,就定义CURSCRIPT为空。
    **********************************************************************************************************************************************

    将变量输出到文本:

    file_put_contents("./test.log","$_POST");
    file_put_contents("./test.log","$_POST",FILE_APPEND);    //FILE_APPEND :如果文件 filename 已经存在,追加数据而不是覆盖。

    输出数组:
    $str='';
    foreach ($arr as $key=>$value){
      $str .= $key.'='.$value."
    ";
    }
    file_put_contents("c:/test.log","$str");

    **********************************************************************************************************************************************

    后台T型布局:


    **********************************************************************************************************************************************

    JS实现返回上一页的按钮:

    <input type="button" onclick="javascript:history.go(-1);" value="返回上一页"/>
    **********************************************************************************************************************************************

    在HTML里怎么给普通按钮添加超链接?

    <input type="button" value="跳转按钮" onclick="javascript:window.location.href='abc.html';"/>

    **********************************************************************************************************************************************

    用php在页面之间传递数组:

    实现大致思路:将数组转化成字符串,可以用get方式作为一个参数来传递到另外一个页面,接受后再将字符串转成数组即可。
    代码如下:

    a.php

    <?php
    $parm=array('0'=>111,'1'=>'test','2'=>true);
    $arg=implode(":",$parm);
    $link="b.php?arg=$arg";
    echo "<a href='$link'>将数组以参数方式传递给b</a>";
    ?>
    b.php

    <?php
    $arg= $_GET['arg'];
    $parm=explode(":", $arg);
    print_r($parm);
    ?>
    最终输出:Array( [0] => 111 [1] => test [2] => 1)


    使用POST方式提交。应该用以下方法写表单代码(注意name是text[])。

    <input name="text[]" value="1">
    <input name="text[]" value="2">
    提交以后得到一个名为 text 的数组。
    你可以用 print_r($_POST); 查看接收到的结果。

    **********************************************************************************************************************************************

    mysqli::query()的使用:

    如果成功则返回 TRUE,失败则返回 FALSE。

    mysqli_query() 仅对 SELECTSHOWEXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE例:

    $result=$this->conn->query($sql);//返回的结果是资源类型 
    //将结果集转换为数组:
    $array = array();
    //只有一条记录的时候
    $array=$result->fetch_array();//$array是一维数组
    //当结果集中的记录有多条的时候
    while($row=$result->fetch_array()){
        $array[]= $row; //$array是二维数组
    }

    ***************************************************************************************************************************************************

    防止用户越过登陆界面,直接输入网址进入用户操作页面:

    当用户登陆时,添加代码:

    session_start();

    $_SESSION["isok"]="ok";//在登陆时把“ok”存入session

    在用户操作页面的开始处加上代码:

    session_start();

    if($_SESSION["isok"]!="ok"){exit;}//如果session中没有包含“ok”则退出。

    ***************************************************************************************************************************************************

    php脚本中提示一个信息之后跳转到指定页面:

    echo "<script>alert('一个信息');location.href='index.php';</script>";

    ***************************************************************************************************************************************************

    exit; / exit(); / die(); / die;

    php脚本中的exit;语句的作用是结束当前脚本,也就是说当代码执行到exit时将不再向下执行,相当于java中的break

    ***************************************************************************************************************************************************

    PHP获取当前url路径的函数及服务器变量:

    1.$_SERVER["QUERY_STRING"]
    说明:查询(query)的字符串 

    2.$_SERVER["REQUEST_URI"]
    说明:访问此页面所需的URI,获取当前请求的完整的(除域名的)url

    3.$_SERVER["SCRIPT_NAME"]
    说明:包含当前脚本的路径

    4.$_SERVER["PHP_SELF"]
    说明:当前正在执行脚本的文件名

    实例:
    1.http://www.biuuu.com/ (直接打开主页)
    结果:
    $_SERVER["QUERY_STRING"] = ""
    $_SERVER["REQUEST_URI"] = "/"
    $_SERVER["SCRIPT_NAME"] = "/index.php"
    $_SERVER["PHP_SELF"]     = "/index.php"

    2.http://www.biuuu.com/?p=222 (附带查询)
    结果:
    $_SERVER["QUERY_STRING"] = "p=222"
    $_SERVER["REQUEST_URI"] = "/?p=222"
    $_SERVER["SCRIPT_NAME"] = "/index.php"
    $_SERVER["PHP_SELF"]     = "/index.php"

    3.http://www.biuuu.com/index.php?p=222&q=biuuu
    结果:
    $_SERVER["QUERY_STRING"] = "p=222&q=biuuu"
    $_SERVER["REQUEST_URI"] = "/index.php?p=222&q=biuuu"
    $_SERVER["SCRIPT_NAME"] = "/index.php"
    $_SERVER["PHP_SELF"]     = "/index.php"

    $_SERVER["QUERY_STRING"]获取查询语句,实例中可知,获取的是?后面的值
    $_SERVER["REQUEST_URI"] 获取http://www.biuuu.com后面的值,包括/
    $_SERVER["SCRIPT_NAME"] 获取当前脚本的路径,如:index.php
    $_SERVER["PHP_SELF"] 当前正在执行脚本的文件名

    当前url"http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']

    ***************************************************************************************************************************************************

    根据用户权限判断是否显示某一条目:

    <?php
      if($_SESSION["rights"]==1){//用户权限为1时,用户界面显示【管理员管理】
    ?>
         <li><a href="admin.php" target="main">管理员管理</a></li>
    <?php
       }
    ?>

    ***************************************************************************************************************************************************

    用户重新登录的问题:

    当修改密码后要求用户重新登录,如果session中的数据仍然存在的话,那么浏览器就会跳过登录页面直接进入用户页面

    session_destroy();//销毁已存储的session 数据

    echo "<script>alert('密码修改成功,请重新登录');top.location.href='login.php';</script>";

    ***************************************************************************************************************************************************

    隐式提交用户名:

    <input name="username" type="hidden" id="username" size="30"  value="<?php echo $_SESSION["username"];?>"/>

    <?php echo $_SESSION["username"];?>


    ***************************************************************************************************************************************************

    js验证输入的信息:

    <script>
    function test(){
        if(document.admin.username.value==''){
          alert('请输入管理员账号');
          return false;
        }
        if(document.admin.password.value==''){
            alert('请输入管理员密码');
            return false;
        }
     	return true;   
    }
    </script>
    <form name="admin" id="admin" method="POST" action="admin_addSava.php" onsubmit="return test();">
    ***************************************************************************************************************************************************

    循环输出复选框:

    aaa.php文件:

    <form action="idd.php" method="post">
    <?php
    	for($i=1;$i<5;$i++){	 
    ?>
    		<input name="id[]" type="checkbox" value="<?php echo $i;?>" />复选框<?php echo $i;?><br/>
    <?php
    	}	 
    ?>
    <input type="submit" name="button" id="button" value="确定" />
    </form>

    bbb.php文件:

    <?php
    	$value=$_POST['id'];//$value是一个数组
    	//echo($value);
    	var_dump($value);
    	foreach($value as $v){
    		echo "<br/>$v";
    	}
    ?>

    输出:array(2) { [0]=> string(1) "2" [1]=> string(1) "3" } 
                2
                3


    ***************************************************************************************************************************************************

    只查看某一状态的部分代码实现:

    <?php
    require_once '../plus/DbMysql.php';
    $db= new DbMysql();
    $sql="select * from user"; //基本语法
    $parm=" where 1 ";  //条件
    
    //条件增加
    $zt=@$_GET["zt"];
    if($zt!=""){
        $parm.=" and zt='$zt'";
    }
    $sql.=$parm;
    $db->sql($sql);
    $infocount=$db->affected(); //信息总数量
    $pagesize=5; //每页显示数量
    $page = new page($infocount, $pagesize); 
    
    $sql.=$page->limit();
    $result=$db->select($sql);
    ?>

    ......

    查看:<a href='user.php'>全部</a> <a href="?zt=1">待审核</a> <a href="?zt=3">锁定</a> <a href="?zt=2">正常</a></div> 



    ***************************************************************************************************************************************************

    查询的部分代码实现:

    user.php文件:

    <?php
      ......
      if($key!=""){
          $parm.= " and ".$stype." like '%$key%' ";
      }
      $sql.=$parm;
      ......
    ?>
    
    <form action="user.php" method="get" name="userso" onsubmit="return test();">//test()判断是否输入内容
         用户名:
         <select name="stype" id="stype">
               <option value="username">用户名</option>
               <option value="email">邮箱</option>
               <option value="xingming">真实姓名</option>
         </select>
         <input name="key" type="text" id="key" />
         <input name="" type="submit" value="搜索" />
    </form>

    ***************************************************************************************************************************************************

    批量审核的代码实现:

    <script>
    function plzt(n){ 
    	document.userinfo.zt.value=n;
    	document.userinfo.action="user_ztshenhe.php";
    	document.userinfo.submit();//js中提交表单
    }
    </script>
    .....
    <form action="user_alldel.php" method="post" name="userinfo">
    ......
    <input type="submit" value="批量删除" />
    <input type="button" name="button" id="button" value="批量审核" onclick="plzt(2)" />
    <input type="button" name="button2" id="button2" value="批量待审核" onclick="plzt(1)" />
    <input type="button" name="button3" id="button3" value="批量锁定" onclick="plzt(3)" />
    <input type="hidden" name="zt" id="zt" />

    点击“批量审核”按钮后:user_ztshenhe.php文件中会通过post方式获取提交的id(数组)zt,然后更改数据库的相应字段。


    ***************************************************************************************************************************************************

    按类别显示内容的部分代码实现:


    <select name="select" id="select" onchange="javascript:location.href=this.options[selectedIndex].value">
           <option value="feedback.php">查看全部</option>       
         <?php
           $typeInfo = $db->select("select id,typename from feedbackType where typezt=1  order by typeorder ");
           foreach($typeInfo as $row){
               if($typeid==$row["id"]){//为了实现:选择某一类别后,该类别名称默认显示在红圈处
                  echo "<option value='?typeid=".$row["id"]."' selected>".$row["typename"]."</option>";      
               }else{
                  echo "<option value='?typeid=".$row["id"]."'>".$row["typename"]."</option>";
               }
           }
         ?>
    </select>
    ***************************************************************************************************************************************************

    在父页面中添加内容:

    parent.php文件:
      <form action="aaa.php" method="POST"  name="admin" id="admin" onsubmit="return test();">
      ......
      <tr id="logotr">
                    <td>图片地址:</td>
                    <td> </td>
                    <td><input name="picurl" type="text" id="picurl" size="30" /></td>
                    <td>
                        <iframe src="son.php" frameborder="0" width="350" height="30"></iframe>
                    </td>
                 </tr>
        ......
      </form>
    son.php文件:
      echo "<script>parent.document.admin.picurl.value='要在图片地址栏目的文本框中添加的内容';</script>";
    ***************************************************************************************************************************************************

    双引号内解析php变量:

    <?php
    $a = 123;
    echo "dsfsdf $a fsfds";
    ?>
    正常来说,双引号内的变量会自动解析,输出:dsfsdf 123 fsfds
    可是类似于这样的变量$_SESSION['pid'],插入到字符串中回报语法错误,此时可以在变量外包裹{}解决:
    echo "dsfsdf {$_SESSION['pid']} fsfds";

    **********************************************************************************************************************************************




  • 相关阅读:
    [navicat premium] [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
    阿里云推荐码优惠享9折
    [eclipse]maven 编译时报错:编码 UTF-8 的不可映射字符
    Aqua Data Studio【下载】ads-windows-x64-16.0.5
    PL/SQL Develper配置Oracle client
    SecureCRT 访问本地Linux虚拟机NAT网络(VMware workstation 9+secureCRT+Ubuntu12.04)
    Spring官方下载地址
    dom4j创建XML文件
    azure devops
    html里如何获取每次点击select里的option值
  • 原文地址:https://www.cnblogs.com/moqiang02/p/4061527.html
Copyright © 2011-2022 走看看