问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请问一个PHP页面如何与另一个PHP页面交互?

发布网友 发布时间:2022-04-06 05:36

我来回答

4个回答

懂视网 时间:2022-04-06 09:58

前言

在《PHP学习笔记-PHP与Web页面的交互1》笔记中讲解了form表单的一些属性,包括它的输入域标记、选择域标记和文字域标记的写法,接下来的内容就是讲如何获取表单数据以及PHP数据的传递,包括对各种控件值的获取。

相关学习推荐:php编程(视频)

插入表单

提交表单之前一定得有表单,当我们的表单创建完毕后可以将表单插入Web页中,代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>在普通的Web页中插入表单</title>
<style type="text/css">
body,td,th {
 font-size: 12px;
}
</style>
</head>
<body>
<form action="demo_1.php" method="post" name="form1" enctype="multipart/form-data">
 <table width="405" height="24" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">
 <tr bgcolor="#FFCC33">
 <td width="103" height="25" align="right">商品名称:</td>
 <td height="25" align="left"><input name="product" type="text" id="user" size="20" maxlength="100"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">市场:</td>
 <td height="25" colspan="2" align="left"><input name="from" type="radio" value="海外" checked>
 海外
 <input type="radio" name="from" value="国内">
 国内</td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td width="103" height="25" align="right">编号:</td>
 <td width="289" height="25" colspan="2" align="left"><input name="code" type="text" id="code" size="20" maxlength="100"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">种类:</td>
 <td height="25" colspan="2" align="left"><select name="select">
 <option value="电器">电器</option>
 <option value="家具">家具</option>
 <option value="化妆品">化妆品</option>
 <option value="图书" selected>图书</option>
 <option value="服饰">服饰</option>
 <option value="宠物">宠物</option>
 <option value="计算机">计算机</option>
 </select></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">商品图片: </td>
 <td height="25" colspan="2" align="left"><input name="photo" type="file" size="20" maxlength="1000" id="photo"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">商品描述: </td>
 <td height="25" colspan="2" align="left"><textarea name="intro" cols="28" rows="3" id="info"></textarea></td>
 </tr>
 <tr align="center" bgcolor="#FFCC33">
 <td height="25" colspan="3"><input type="submit" name="submit" value="提交">
   
 <input type="reset" name="submit2" value="重置"></td>
 </tr>
 </table>
</form>
<?php
header("Content-Type:text/html; charset=gb2312");
?>>
</body>
</html>

在HTML的<body>和</body>间添加一个表单。

运行结果:

在Web页中插入表单

获取表单数据

表单数据的获取主要有两个钟方式分别是POST()方法和GET()方法。

通过<form>表单的method属性所指定。

使用POST方法提交表单

应用POST方法时,只需将<form>表单中的属性method设置成POST即可。POST方法不依赖于URL,不会显示在地址栏。POST方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器端是看不到这一过程的,安全性高。所以POST方法比较适合用于发送一个保密的(如信用卡号)或者容量较大的数据到服务器。

示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
 />
 <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="post" name="form1" enctype="multipart/form-data">
 <table width="300" border="1" cellpadding="10" cellspacing="0">
 <tr>
 <td height="30">编号:
 <input type="text" name="code" size="20"/>
 <input type="submit" name="subimt" value="提交"/>
 </td>
 </tr>
 </table>
</form>
<?php
header("Content-Type:text/html; charset=gb2312");
?>
</body>
</html>

运行结果:

这里写图片描述

点击提交按钮后,我们发现地址栏不会显示我们提交的参数。

使用GET方法提交表单

GET方法是<form>表单中method属性的默认方法。使用GET方法提交的表单数据被附加到URL后,并作为URL的一部分发送到服务器端。在程序的开发过程中,由于GET方法提交的数据是附加到URL上发送的,因此,在URL的地址栏中将会显示“URL+用户传递的参数”。

将上面示例中的<form>表单中method属性指定为get,运行程序后的结果如下:

这里写图片描述

点击按钮后地址栏会通过‘?'连接键值对,键值对以‘&'分隔。

PHP参数传递的常用方法

获取表单数据,实际上就是获取不同的表单元素的数据。<form>标签中的name是所有表单元素都具备的属性,即为这个表单元素的名称,在使用时需要使用name属性来获取相应的value属性值。

PHP参数传递的常用方法有三种:

  1. $_POST[]全局变量
  2. $_GET[]全局变量
  3. $_SESSION[]变量

$_POST[]全局变量

使用PHP的$_POST[]预定义变量可以获取表单元素的值,格式为:

$_POST[name]

范例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
 />
 <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="post" name="form1" enctype="multipart/form-data">
 <table width="300" border="1" cellpadding="10" cellspacing="0">
 <tr>
 <td height="30">编号:
 <input type="text" name="code" size="20"/>
 <input type="submit" name="subimt" value="提交"/>
 </td>
 </tr>
 </table>
</form>
<?php
header("Content-Type:text/html; charset=gb2312");
$value=$_POST['code'];
echo "编号:".$value;
?>
</body>
</html>

运行结果:

这里写图片描述

$_GET[]全局变量

PHP使用$_GET[]预定义变量获取通过GET方法传过来的值,使用格式为:

 $_GET[name]

范例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
 />
 <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="get" name="form1" enctype="multipart/form-data">
 <table width="300" border="1" cellpadding="10" cellspacing="0">
 <tr>
 <td height="30">编号:
 <input type="text" name="code" size="20"/>
 <input type="submit" name="subimt" value="提交"/>
 </td>
 </tr>
 </table>
</form>
<?php
header("Content-Type:text/html; charset=gb2312");
$value=$_GET['code'];
echo "编号:".$value;
?>
</body>
</html>

运行结果:

这里写图片描述

$_SESSION[]变量

使用$_SESSION[]变量可以获取表单元素的值,格式为:

$_SESSION[name]

使用$_SESSION[]传参的方法获取的变量值,保存之后任何页面都可以使用。但这种方法很耗费系统资源,建议读者慎重使用。

案例

最后结合笔记中的第一个demo写一个完整的案例:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
 <title>在普通的Web页中插入表单</title>
 <style type="text/css">
 body, td, th {
 font-size: 12px;
 }
 </style>
</head>
<body>
<form action="demo_1.php" method="post" name="form1" enctype="multipart/form-data">
 <table width="405" height="24" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">
 <tr bgcolor="#FFCC33">
 <td width="103" height="25" align="right">商品名称:</td>
 <td height="25" align="left"><input name="product" type="text" id="user" size="20" maxlength="100"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">市场:</td>
 <td height="25" colspan="2" align="left"><input name="from" type="radio" value="海外" checked>
 海外
 <input type="radio" name="from" value="国内">
 国内
 </td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td width="103" height="25" align="right">编号:</td>
 <td width="289" height="25" colspan="2" align="left"><input name="code" type="text" id="code" size="20"
     maxlength="100"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">种类:</td>
 <td height="25" colspan="2" align="left"><select name="select">
  <option value="电器">电器</option>
  <option value="家具">家具</option>
  <option value="化妆品">化妆品</option>
  <option value="图书" selected>图书</option>
  <option value="服饰">服饰</option>
  <option value="宠物">宠物</option>
  <option value="计算机">计算机</option>
 </select></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">商品图片:</td>
 <td height="25" colspan="2" align="left"><input name="photo" type="file" size="20" maxlength="1000"
    id="photo"></td>
 </tr>
 <tr bgcolor="#FFCC33">
 <td height="25" align="right">商品描述:</td>
 <td height="25" colspan="2" align="left"><textarea name="intro" cols="28" rows="3" id="info"></textarea>
 </td>
 </tr>
 <tr align="center" bgcolor="#FFCC33">
 <td height="25" colspan="3"><input type="submit" name="submit" value="提交">
   
 <input type="reset" name="submit2" value="重置"></td>
 </tr>
 </table>
</form>
<?php
header("Content-Type:text/html; charset=gb2312");

if ($_POST[submit] != "") {
 echo "商品清单:";
 echo " <br><br>商品名称:" . $_POST['product'];
 echo " <br><br> 市场:" . $_POST[from];
 echo " <br><br> 编号:" . $_POST['code'];
 echo " <br><br> 种类:" .$_POST['select'];
 $path = './upfiles/'. $_FILES['photo']['name'];
 move_uploaded_file($_FILES['photo']['tmp_name'],$path);
 echo " <br><br>商品图片:" .$path;
 echo " <br><br>商品描述:" .$_POST['intro'];
}


?>
</body>
</html>

运行结果:

这里写图片描述

通过move_uploaded_file方法将图片上传到当前路径下的upfiles文件夹中。

相关学习推荐:编程视频

热心网友 时间:2022-04-06 07:06

建议使用jquery:

$.post('b.php','id=1',function(){
alert('删除成功');

})

然后在b页面,
$id = $_POST['id'];

这样就获取到了id值(我这实例是id等于2,具体等于多少,看你自己的程序而定啊!

然后就可以在b这个php页面对id为2的记录进行相关操作了

热心网友 时间:2022-04-06 08:24

建议楼主采用php的面向对象编程追问你好,我在其它编程语言中学过面向对象,只是还没接触过PHP的。请问想像我上面的例子那样,是否可以写一个C.php页面,其中有一个类或方法可以删除图片。在A与B的页面require(c.php)并实例化或调用这个类、方法?那么,这种方式与直接在A与B中写删除图片过程相比,哪种效率更高?

热心网友 时间:2022-04-06 09:58

这么来看,既然两个功能是连续的,那么程序实现的时候就不应该分开来设计。

至于用到了ajax,这样的设计只会使本来应该属于一起的操作之间出现很多不稳定的因素

所以建议设计到一个方法中什么的,这样要是出现了什么错误也方便回滚之类的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
远得要命的爱情丁菲是谁演的 远的要命的爱情里的乔佳影是谁演的 远得要命的爱情乔佳影是什么角色 问。。我在厦门办的银行卡回江西可以用吗? 远得要命的爱情中的乔佳影是个怎样的人 厦门农信社的公告出来了,想问一下银行合同制和劳务派遣和正式工的区别... 厦门的信用社银联卡到南宁能不能用?要不要手续费? 泉州农信社年前新办的卡,存了钱,银行说三个工作日后才能动这个钱,为什 ... ...女鞋的话 是不是必须直通车 我们鞋子都是20---50鞋子利润低 直通车... 拼多多直通车200红包(拼多多直通车每天烧1000) 如何实现PHP和JSP的交互 php做客户端,java做服务端,用webservice怎么交互 用PHP做一个登录注册功能,点击注册不能跳转页面 php&#x00A0;如何获取&#x00A0;input&#x00A0;值(页面不跳转) PHP 不跳转页面 可以对记录做修改吗? php form表单怎么把数据提交到本页而不跳转? php搜索框点击搜索后无法跳转页面,求帮忙看看代码 thinkphp中页面无法跳转?? php跳转不到静态页面 求解决 怎么实现thinkphp不跳转页面跳转 一段PHP用户登陆的页面,可是就是不跳转,只出现空白页面 php登陆验证程序无法跳转页面。 使用php分页技术后,点击第一页的按钮页面可顺利跳转,但是点击第二页或者之后页面的按钮,页面无法跳转 php会员检查页面 会话不跳转页面 php问题,提交表单了,但是数据进不了数据库,也不会自动跳转页面 php页面跳转不过去,(留言板功能无法实现) php跳转页面 不跳转 php生成数组转成json后,在转化为对象 在php或者是js里怎样查找替换字符串,不区分大小写 PHP大神路过留句代码,谢谢了. 循环查找替换字符串。 PHP如何与JS进行交互? 一个php 文件与多个html文件如何进行交互 html与PHP交互的写法,谁给我说明一下,谢谢了 swift语言怎样与php或者javaweb进行交互 简述HTML、JavaScript、CSS、PHP技术在Web开发中的作用 h5中websocked怎么跟php交互 关于php和web开发 PHP JSON格式数据交互实例代码详解 PHP在Web网站开发领域的优势有哪些 PHP 如何在新页面打开一个webservice接口,并提交数据? epic环境安装包在哪个文件夹 epic默认安装路径 epic快捷方式指向哪个文件(epic启动器路径)? epic卸载程序在哪个文件夹 epic本地存档是哪个文件 误删了Epic Games Launcher,怎么找到对应路径的Paragon epic怎么更换缓存位置? epic游戏启动时找不到应用程序 epic游戏的属性在哪 epic引擎启动一半不动