php给$_POST赋值会导致值为空

简介: 在调试一个程序的时候发现很奇怪的现象,post传过来的值再某些地方为空,先看下面的代码 1 8 9 10 Multipurpose Form 11 12 13 18 19 ...

在调试一个程序的时候发现很奇怪的现象,post传过来的值再某些地方为空,先看下面的代码

 1 <?php 
 2 if($_POST['submit'] == 'Add'){
 3     if($_POST['type']='movie' && $_POST['movie_type'] == ''){
 4         header('Location:form4.php');
 5     }
 6 }
 7 ?>
 8 <html>
 9     <head> 
10     <title>Multipurpose Form</title>
11     </head>
12     <body>
13         <?php 
14         
15         if($_POST['submit'] == 'Add'){
16             echo '<h1>Add '.ucfirst($_POST['type']).'</h1>';
17         ?>
18         <form action="form4b.php" method="post"> 
19             <input type="hidden" name="type" value="<?php echo $_POST['type'];?>"/>
20             <table>
21                 <tr>
22                     <td>Name</td>
23                     <td><?php echo $_POST['name']?>
24                     <input type="hidden" name="name" value="<?php echo $_POST['name']?>"/>
25                     </td>
26                 </tr>
27                 <?php 
28                 
29                 if($_POST['type'] == 'movie') {?>
30                 <tr>
31                     <td>Movie type</td>
32                     <td><?php echo $_POST['movie_type']?> <input type="hidden" name="movie_type" value='<?php echo $_POST["movie_type"]?>'/></td>
33                 </tr>
34                 <tr>
35                     <td>Year</td>
36                     <td><input type="text" name="year"/></td>
37                 </tr>
38                 <tr><td>Movie Description</td>
39                 <?php } else
40                     {  echo '<tr><td>Biography</td>';  }
41                 ?>
42                 <td><textarea name="extra" id="" cols="60" rows="5"></textarea></td>
43                 </tr>
44                 <tr>
45                     <td colspan="2" style="text-algin:center;">
46                         <?php 
47                         if(isset($_POST['debug'])){
48                             echo '<input type="hidden" name="debug" value="on">';
49                         }
50                         ?>
51                         <input type="submit" name="submit" value="Add" />
52                     </td>
53                 </tr>
54             </table>
55         </form>
56         <?php 
57         }
58         else if($_POST['submit']=='Search'){
59             echo '<h1>Search for '.ucfirst($_POST["type"]).'</h1>';
60             echo '<p>Searching for '.$_POST["name"].'...</p>';
61         }
62         
63         if(isset($_POST['debug'])){
64             echo '<pre>';
65             print_r($_POST);
66             echo '</pre>';
67         }
68         ?>
69     </body>
70 </html>

在第29行是要根据上一个页面传递过来的值来输出信息的,但是即使传递过来的值是movie,还是没有输出想要的值,我我在很多地方都添加了echo($_POST['type']);这一句话发先在代码最顶端还能输出movie 的,第二行下面还是能够输出,就是在第三行下面就没有值了,这里你可能也发现错误了,if($_POST['type']='movie',这一句,本来是判断语句,结果少写了一个等号变成了赋值语句,初学者错误啊!!!!!!

正确的写法应该是if($_POST['type']=='movie' && $_POST['movie_type'] == '')



作者:Tyler Ning
出处:http://www.cnblogs.com/tylerdonet/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com  联系我,非常感谢。

目录
相关文章
|
6月前
|
JSON PHP 数据格式
蓝易云 - PHP用CURL发送Content-type为application/json的POST请求方法
在这段代码中,我们首先创建了一个包含我们要发送的数据的数组,并使用 `json_encode`函数将其转换为JSON格式。然后,我们初始化了一个cURL会话,并设置了一些选项,包括POST请求方法、要发送的数据、返回结果和HTTP头部信息。最后,我们执行了cURL请求并关闭了会话。
164 2
|
6月前
|
运维 Serverless 数据处理
函数计算产品使用问题之 php环境中如何修改PHP允许的文件上传大小和POST最大大小
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
PHP
PHP $_POST
PHP $_POST
45 0
|
7月前
|
PHP 数据格式
PHP 中的CURL 模拟表单的post提交
PHP 中的CURL 模拟表单的post提交
113 0
|
7月前
|
安全 PHP 数据库
从建站打拿站 -- PHP(GET和POST)
从建站打拿站 -- PHP(GET和POST)
43 0
|
PHP Python
关于python变量的再次折腾,没有PHP的引用赋值
今天,重看php文档的时候,发现了这样的讲法
40 0
|
JSON 前端开发 PHP
dataType:'json'时post,总是调用error???附带php和json的一些坑
ajax是一个不错的东西 当dataType:'json'时提交,总是返回error 这是为什么? 经过折腾,终于发现因为要求的是json,返回的信息并不是json格式,因此总是出错
74 0
|
PHP
【PHP】foreach 引用赋值
php foreach 引用赋值,在使用过程中需要及时释放引用变量,防止出现使用时变量污染。
171 1
|
JavaScript API PHP
php和js获取POST参数API接口数据的不同解决方案
php和js获取POST参数API接口数据的不同解决方案
116 0
|
前端开发 PHP
php解决ajax使用post请求时提交的数据过多而导致et::ERR_CONNECTION_RESET的解决方案
php解决ajax使用post请求时提交的数据过多而导致et::ERR_CONNECTION_RESET的解决方案
193 0