欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php给$

程序员文章站 2022-05-27 09:45:29
...

在调试一个程序的时候发现很奇怪的现象,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 h

在调试一个程序的时候发现很奇怪的现象,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 
 9     10     Multipurpose Form11     
12     
13         php 
14         
15         if($_POST['submit'] == 'Add'){
16             echo '

Add '.ucfirst($_POST['type']).'

'; 17 ?> 18
19 20 2122232627php 2829if($_POST['type'] == 'movie') {?> 30313233343536373839else 40 { echo ''; } 41 ?> 424344455354
Name echo $_POST['name']?> 24 25
Movie type echo $_POST['movie_type']?>
Year
Movie Description
Biography
46 php 47 if(isset($_POST['debug'])){ 48 echo ''; 49 } 50 ?> 51 52
55
56 php 57 } 58 else if($_POST['submit']=='Search'){ 59 echo '

Search for '.ucfirst($_POST["type"]).'

'; 60 echo '

Searching for '.$_POST["name"].'...

'; 61 } 62 63 if(isset($_POST['debug'])){ 64 echo '
';
65             print_r($_POST);
66             echo '
'; 67 } 68 ?> 69 70

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

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