php给$_POST赋值会导致值为空
在调试一个程序的时候发现很奇怪的现象,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赋值会导致值为空的更多相关文章
- (转)[SQL Server] 动态sql给变量赋值(或返回值给变量)
本文转载自:http://blog.csdn.net/xiaoxu0123/article/details/5684680 [SQL Server] 动态sql给变量赋值(或返回值给变量) decla ...
- js实现hashtable的赋值、取值、遍历
哈希表(Hashtable)这个概率应该是#c里面的概念,用来赋值.取值.遍历.排序操作提高效率.想起这个东西其实使我们以前经常遇到这样的面试题,一个很大的数组可能有100000个,如何快速知道它里面 ...
- 关于ligerform中select与text的赋值与取值
如有下ligerform表单: var formData = [ { display: "区域", name: "QYYJ", newline: true, l ...
- Jquery实现数据双向绑定(赋值和取值),类似AngularJS
<!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...
- ViewBag赋值Html格式值
今天再给自己总结一下,关于ViewBag赋值Html格式值,但是在web页显示不正常; 例如,ViewBag.Content = "<p>你好,我现在测试一个东西.</p& ...
- 实用ExtJS教程100例-011:ExtJS Form 使用JSON数据赋值和取值
上一节中我们演示了ExtJS Form的异步加载和提交数据,本节中我们将演示如何使用JSON数据为ExtJS Form中的字段赋值和取值. 系列ExtJS教程持续更新中,点击查看>>最新E ...
- Java反射 - 简单的给Bean赋值和取值
由于项目的实际需要,所以利用java反射原理写了一个简单给bean赋值和取值通用的类,在此记录下方便自己日后用到,也为需要的兄弟提供个参考例子. 工具类BeanRefUtil: package c ...
- GO学习笔记 - 变量在定义时没有明确的初始化时会赋值为“零值 ”。
官方教程:https://tour.go-zh.org/basics/12 变量在定义时没有明确的初始化时会赋值为 零值 . 零值是: 数值类型为 0 , 布尔类型为 false , 字符串为 &qu ...
- jquery input 赋值和取值
记录一下: 在写一个input赋值,二话不说就直接利用了$('#xx').val()来进行取值和赋值,取值ok,赋值后利用alert显示正确,但是在html上并没有正确的显示出来,后来改为使用如下代码 ...
随机推荐
- 微软URLRewriter.dll的url重写的简单使用
1.先下载MSDNURLRewriting.zip包,打开代码生成URLRewriter.dll文件: 2.将URLRewriter.dll文件引用到项目中: 3.在web.config文件中 &l ...
- 图解ARP协议(五)免费ARP:地址冲突了肿么办?
一.免费ARP概述 网络世界纷繁复杂,除了各种黑客攻击行为对网络能造成实际破坏之外,还有一类安全问题或泛安全问题,看上去问题不大,但其实仍然可以造成极大的杀伤力.今天跟大家探讨的,也是技术原理比较简单 ...
- Linux 的启动流程--转
http://cloudbbs.org/forum.php?mod=viewthread&tid=17814 半年前,我写了<计算机是如何启动的?>,探讨BIOS和主引导记录的作用 ...
- CentOS7手动修改系统时间
CentOS7 永久修改系统时间 安装在虚拟机上的CentOS7的时间分为系统时间和硬件时间.二者都修改,重启系统(init 6 )才会永久生效.修改步骤如下 查看当前系统时间 date 修改当 ...
- [转]Getting started with ASP.NET Web API OData in 3 simple steps
本文转自:https://blogs.msdn.microsoft.com/webdev/2013/01/29/getting-started-with-asp-net-web-api-odata-i ...
- c# 中 event 和 delegate 的区别
event 是一种特殊的delegate. 1)event 在本类(派生类也不行)之外不能触发.(如果是public的在类外或protected的在派生类中可以使用 += 或 -=, 但不能调用该ev ...
- js获取网页上选中的部分,包含html代码
function getSelectedContents(){ if (window.getSelection) { //chrome,firefox,opera var ra ...
- Spring学习(二)--- Bean 作用域
概述 本文介绍的Spring 中bean的作用域. 问题 : bean的作用域有几种,有那些应用场景 bean 装配过程 下图为bean在容器中从创建到销毁的若干阶段. bean 作用域 作用域介绍 ...
- 【8】memcached实例
一.memcached环境搭建 1.下载后解压到D:\memcached(下载地址:memcached-win64下载地址) 2.安装到windows服务,打开cmd命令行,进入memcached目录 ...
- MVC中学到的小知识(MVC中的跳转,传参)
1.mvc中视图中的href="XXX",这个XXX是控制器地址,不是另一个视图.(这里的href语句只能转向控制器,不能直接转向视图),如果要实现转向视图,可以先转到控制器,然后 ...