设为首页 收藏本站
查看: 380|回复: 0

[经验分享] PHP拾贝

[复制链接]

尚未签到

发表于 2017-3-4 10:13:45 | 显示全部楼层 |阅读模式
  $_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."\n";
}
file_put_contents("c:/test.log","$str");




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

后台T型布局:

DSC0000.jpg



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



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

<input type="button"  value="返回上一页"/>



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



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

<input type="button" value="跳转按钮" />
  **********************************************************************************************************************************************

用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()仅对SELECTSHOWEXPLAINDESCRIBE语句返回一个资源标识符,如果查询执行不正确则返回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>";



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



隐式提交用户名:
  <inputname="username"type="hidden"id="username"size="30"value="<?phpecho$_SESSION["username"];?>"/>
  <?phpecho$_SESSION["username"];?>

DSC0001.jpg



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

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" >

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



循环输出复选框:
  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
DSC0002.jpg




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



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

<?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);
?>
  ......
  查看:<ahref='user.php'>全部</a><ahref="?zt=1">待审核</a><ahref="?zt=3">锁定</a><ahref="?zt=2">正常</a></div>

DSC0003.jpg







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



查询的部分代码实现:
  user.php文件:

<?php
  ......
  if($key!=""){
      $parm.= " and ".$stype." like '%$key%' ";
  }
  $sql.=$parm;
  ......
?>
<form action="user.php" method="get" name="userso" >//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>
DSC0004.jpg



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



批量审核的代码实现:

<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="批量审核"  />
<input type="button" name="button2" id="button2" value="批量待审核"  />
<input type="button" name="button3" id="button3" value="批量锁定"  />
<input type="hidden" name="zt" id="zt" />
  点击“批量审核”按钮后:user_ztshenhe.php文件中会通过post方式获取提交的id(数组)zt,然后更改数据库的相应字段。

DSC0005.jpg



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



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

DSC0006.jpg



<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" >
  ......
  <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";






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








  

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-350064-1-1.html 上篇帖子: php 加 php_ssh2.dll ,使php支持 sftp 下篇帖子: PHP中的list()
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表