Heim >Backend-Entwicklung >PHP-Tutorial >我这个代码点击提交后的为什么页面显示不存在?

我这个代码点击提交后的为什么页面显示不存在?

DDD
DDDOriginal
2016-06-20 12:42:281015Durchsuche

这是两个页面  下面是1.php  提交后跳转到2.php 再跳转到1.php  我用360的浏览器提交后直接显示页面不存在  是怎么回事? 数据库也没有任何东西    我是新手 可能有很多错误 大家帮我看看吧  谢谢  
     
 
这是1.php  
6c24d8bfbe01a7f21ec2ea2ab3502d6b "SET NAMES 'utf8'"));  
 $rs = $db -> prepare("select * from `baidu`;");  
 $rs -> execute();  
 $list = $rs -> fetchAll(PDO::FETCH_ASSOC);  
?>  
100db36a723c770d327fc0aef2ce13b1  
93f0f5c25f18dab9d176bd4f6de5d30e  
9c3bca370b5104690d9ef395f2c5f8d1  
6c04bd5ca3fcae76e30b72ad730ca86d  
a6e374fd6c27f4b9d1f6db7dfd9d5066  
  07e7ad40b7e0294061a1e7902eb890a5';  
      echo $v['name'].'ff9d32c555bb1d9133a29eb4371c1213';  
      echo $v['num'].'ff9d32c555bb1d9133a29eb4371c1213';  
      echo $v['site'].'ff9d32c555bb1d9133a29eb4371c1213';  
      echo $v['content'].'ff9d32c555bb1d9133a29eb4371c1213';  
    }  
  ?>  
16b28748ea4df4d9c2150843fecfba68  
64cb571ed5952d9b43da1f2d70a36e91  
      74901cacd564e38eb2276799e268a219  
          dc6dce4a544fdca2df29d5ac0ea9906b  
            b801c4a2bdeb64b5ff46f909bddadfde  
              5a07473c87748fb1bf73f23d45547ab8请选择4afa15d3069109ac30911f04c56f3338  
              5a07473c87748fb1bf73f23d45547ab81114afa15d3069109ac30911f04c56f3338  
              5a07473c87748fb1bf73f23d45547ab82224afa15d3069109ac30911f04c56f3338  
              5a07473c87748fb1bf73f23d45547ab83334afa15d3069109ac30911f04c56f3338  
              5a07473c87748fb1bf73f23d45547ab84444afa15d3069109ac30911f04c56f3338  
            18bb6ffaf0152bbe49cd8a3620346341  
            7ff07d2c0e347c2583e0a1ec4cdd7e70  
            05cfd628a6e302e1083e9e9876a47e44  
            6b14f126bfa81b93ff3cd2cab165933c  
          16b28748ea4df4d9c2150843fecfba68  
          7f7ad4e3848bcb5bb0d5629c8339c01740587128eee8df8f03d0b607fe983014ff9d32c555bb1d9133a29eb4371c1213  
          f20d061a3899a134aedcb04673a6fa89发布65281c5ac262bf6d81768915a4a77ac0  
      f5a47148e367a6035fd7a2faa965022e  
16b28748ea4df4d9c2150843fecfba68  
36cc49f0c466276486e50c850b7e4956  
73a6ac4ed44ffec12cee46588e518a5e  
 
这是2.php  
f0bbd60121afca66d1aefb1b3e0552c4exec("INSERT INTO baidu(  
type,  
name,  
num,  
site,  
content  
)  
VALUES (  
'select','name','num','site','content'  
)")){  
echo "3f1c4e4b6b16bbbd69b2ee476dc4f83aalert('发布成功');location='1.php';2cacc6d41bbb37262a98f745aa00fbf0";  
}  
?>

回复讨论(解决方案)

看看地址栏上的网址是什么?  
还有,你的站点目录结果及这两个文件所在的位置是怎么样的?


看看地址栏上的网址是什么?  
还有,你的站点目录结果及这两个文件所在的位置是怎么样的?


都在www目录下 没有问题  网址也是http://localhost/2.php    
 


看看地址栏上的网址是什么?  
还有,你的站点目录结果及这两个文件所在的位置是怎么样的?


 
我单独打开2.php也显示不错在  怎么回事


看看地址栏上的网址是什么?  
还有,你的站点目录结果及这两个文件所在的位置是怎么样的?


 
我刚才粗心把那个2.php的文件放到外面了 所以不显示  现在我放到www目录下了  但是数据提交成功后显示不出来刚才提交的内容呢   
而且为什么数据库里面不是插入的数据呢  都是name的值呢  




看看地址栏上的网址是什么?    
还有,你的站点目录结果及这两个文件所在的位置是怎么样的?


 
我刚才粗心把那个2.php的文件放到外面了 所以不显示  现在我放到www目录下了  但是数据提交成功后显示不出来刚才提交的内容呢   
而且为什么数据库里面不是插入的数据呢  都是name的值呢  

因为你2.php的sql没有加$  写的是常量

$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");  
if($pdo->exec("INSERT INTO baidu(  
type,  
name,  
num,  
site,  
content  
)  
VALUES (  
'select','name','num','site','content'  
)")){  
echo "3f1c4e4b6b16bbbd69b2ee476dc4f83aalert('发布成功');location='1.php';2cacc6d41bbb37262a98f745aa00fbf0";  
}  
 
你自己插入的就是字符串,当然就是那个结果。你并没有获取表单提交过来的值。

post的值没有传过去  我改成(  
'$_POST[select]','$_POST[name]','$_POST[num]','$_POST[site]','$_POST[content]'  
)")  怎么还是不行啊  
 

$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");  
if($pdo->exec("INSERT INTO baidu(  
type,  
name,  
num,  
site,  
content  
)  
VALUES (  
'select','name','num','site','content'  
)")){  
echo "3f1c4e4b6b16bbbd69b2ee476dc4f83aalert('发布成功');location='1.php';2cacc6d41bbb37262a98f745aa00fbf0";  
}  
 
你自己插入的就是字符串,当然就是那个结果。你并没有获取表单提交过来的值。


 
post的值没有传过去  我改成(  
'$_POST[select]','$_POST[name]','$_POST[num]','$_POST[site]','$_POST[content]'  
)")  怎么还是不行啊  

改成这样了    插入的内容还是原来的那些  
   
('$_POST[select]','$_POST[name]','$_POST[num]','$_POST[site]','$_POST[content]')") 

在2.php 中 print_r($_POST); 看看结果。  
 
改成下面这样试试看  

('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")

  


在2.php 中 print_r($_POST); 看看结果。  
 
改成下面这样试试看  

('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")

  


 
改成你这样了 还是不行  print_r($_POST);这句话加在echo前面吗  试了一下 什么都没有 我把echo注释掉 只写这一句 怎么还是弹出来提交成功 然后还和原来一样

你这个SQL写法都有问题的。  
老老实实拼接SQL语句字符串吧。




在2.php 中 print_r($_POST); 看看结果。    
   
改成下面这样试试看    

('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")

  


 
改成你这样了 还是不行  print_r($_POST);这句话加在echo前面吗  试了一下 什么都没有 我把echo注释掉 只写这一句 怎么还是弹出来提交成功 然后还和原来一样
加在首行先看下有不有值。  
print_r($_POST);  
exit();  
$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");  
.....  





在2.php 中 print_r($_POST); 看看结果。    
   
改成下面这样试试看    

('{$_POST['select']}','{$_POST['name']}','{$_POST['num']}','{$_POST['site']}','{$_POST['content']}')")

  


   
改成你这样了 还是不行  print_r($_POST);这句话加在echo前面吗  试了一下 什么都没有 我把echo注释掉 只写这一句 怎么还是弹出来提交成功 然后还和原来一样
加在首行先看下有不有值。  
print_r($_POST);  
exit();  
$pdo=new PDO("mysql:host=localhost;dbname=t1","root","");  
.....  

 
我刚下班 试了一下 还是 不行 和原来一样

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn