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

 <?php
if($_POST['submit'] == 'Add'){
if($_POST['type']='movie' && $_POST['movie_type'] == ''){
header('Location:form4.php');
}
}
?>
<html>
<head>
<title>Multipurpose Form</title>
</head>
<body>
<?php if($_POST['submit'] == 'Add'){
echo '<h1>Add '.ucfirst($_POST['type']).'</h1>';
?>
<form action="form4b.php" method="post">
<input type="hidden" name="type" value="<?php echo $_POST['type'];?>"/>
<table>
<tr>
<td>Name</td>
<td><?php echo $_POST['name']?>
<input type="hidden" name="name" value="<?php echo $_POST['name']?>"/>
</td>
</tr>
<?php if($_POST['type'] == 'movie') {?>
<tr>
<td>Movie type</td>
<td><?php echo $_POST['movie_type']?> <input type="hidden" name="movie_type" value='<?php echo $_POST["movie_type"]?>'/></td>
</tr>
<tr>
<td>Year</td>
<td><input type="text" name="year"/></td>
</tr>
<tr><td>Movie Description</td>
<?php } else
{ echo '<tr><td>Biography</td>'; }
?>
<td><textarea name="extra" id="" cols="60" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2" style="text-algin:center;">
<?php
if(isset($_POST['debug'])){
echo '<input type="hidden" name="debug" value="on">';
}
?>
<input type="submit" name="submit" value="Add" />
</td>
</tr>
</table>
</form>
<?php
}
else if($_POST['submit']=='Search'){
echo '<h1>Search for '.ucfirst($_POST["type"]).'</h1>';
echo '<p>Searching for '.$_POST["name"].'...</p>';
} if(isset($_POST['debug'])){
echo '<pre>';
print_r($_POST);
echo '</pre>';
}
?>
</body>
</html>

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

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

												

php给$_POST赋值会导致值为空的更多相关文章

  1. (转)[SQL Server] 动态sql给变量赋值(或返回值给变量)

    本文转载自:http://blog.csdn.net/xiaoxu0123/article/details/5684680 [SQL Server] 动态sql给变量赋值(或返回值给变量) decla ...

  2. js实现hashtable的赋值、取值、遍历

    哈希表(Hashtable)这个概率应该是#c里面的概念,用来赋值.取值.遍历.排序操作提高效率.想起这个东西其实使我们以前经常遇到这样的面试题,一个很大的数组可能有100000个,如何快速知道它里面 ...

  3. 关于ligerform中select与text的赋值与取值

    如有下ligerform表单: var formData = [ { display: "区域", name: "QYYJ", newline: true, l ...

  4. Jquery实现数据双向绑定(赋值和取值),类似AngularJS

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  5. ViewBag赋值Html格式值

    今天再给自己总结一下,关于ViewBag赋值Html格式值,但是在web页显示不正常; 例如,ViewBag.Content = "<p>你好,我现在测试一个东西.</p& ...

  6. 实用ExtJS教程100例-011:ExtJS Form 使用JSON数据赋值和取值

    上一节中我们演示了ExtJS Form的异步加载和提交数据,本节中我们将演示如何使用JSON数据为ExtJS Form中的字段赋值和取值. 系列ExtJS教程持续更新中,点击查看>>最新E ...

  7. Java反射 - 简单的给Bean赋值和取值

    由于项目的实际需要,所以利用java反射原理写了一个简单给bean赋值和取值通用的类,在此记录下方便自己日后用到,也为需要的兄弟提供个参考例子. 工具类BeanRefUtil:   package c ...

  8. GO学习笔记 - 变量在定义时没有明确的初始化时会赋值为“零值 ”。

    官方教程:https://tour.go-zh.org/basics/12 变量在定义时没有明确的初始化时会赋值为 零值 . 零值是: 数值类型为 0 , 布尔类型为 false , 字符串为 &qu ...

  9. jquery input 赋值和取值

    记录一下: 在写一个input赋值,二话不说就直接利用了$('#xx').val()来进行取值和赋值,取值ok,赋值后利用alert显示正确,但是在html上并没有正确的显示出来,后来改为使用如下代码 ...

随机推荐

  1. [Mysql 查询语句]——查询指定记录

    #比较 等于; 大于; 小于; 小于或等于; 大于或等于; 不等于; 排除掉; #指定范围查询 BETWEEN IN ; ; #指定集合查询 IN ,); ,); 集合元素可以是字符串类型 selec ...

  2. [PY3]——pwd | grp 模块

    pwd和grp模块都非常简单粗暴,各自分别下面都只有三个函数,来根据/etc/passwd./etc/group文件获取相关信息 getpwuid(UID):根据UID获取用户信息,返回一个list ...

  3. Mysql查询今天、昨天、7天、近30天、本月、上一月数据

    今天 SELECT * FROM 表名 WHERE TO_DAYS(时间字段名) = TO_DAYS(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ...

  4. js中json对象数组按对象属性排序

    在实际工作经常会出现这样一个问题:后台返回一个数组中有i个json数据,需要我们根据json中某一项进行数组的排序. 例如返回的数据结构大概是这样: { result:[ {id:,name:'中国银 ...

  5. 微信小程序 c#后台支付结果回调

    又为大家带来简单的c#后台支付结果回调方法,首先还是要去微信官网下载模板(WxPayAPI),将模板(WxPayAPI)添加到服务器上,然后在打开WxPayAPI项目中的example文件下的 Nat ...

  6. 使用原生JavaScript实现对select增加option标签并附加value属性

    好久没有写原生的东西了,今天写了一个小项目里面包含着option选项,所以我决定使用原生JavaScript动态生成, 本着互联网分享精神,我将本篇文章分享给大家. html代码(就是一个select ...

  7. 【原】Spring和Dubbo基于XML配置整合过程

    背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时,只需一个 ...

  8. Java基础——面向对象

    Hello 大家好,我又来啦,今天我们来说说Java的面向对象. 还记得之前去面试几家公司的实习生职位,大部分面试官都问过我有关面向对象 的问题,不知道以后还会不会问,估计是不会了吧...(:3[▓▓ ...

  9. windows 下运行 tomcat

    本节是以 tomcat 7.0 为例,描述在 windows 系统上从下载到运行 tomcat 的步骤 https://tomcat.apache.org/download-70.cgi 下载后解压缩 ...

  10. MYSQL建表问题(转)

    今天在dos下准备新建一个数据表,但一直出错,如下 后面在网上查了好久,终于找到了原因.创建 MySql 的表时,表名和字段名外面的符号 ` 不是单引号,而是英文输入法状态下的反单引号,也就是键盘左上 ...