$ _POST不会给出任何结果

时间:2015-09-05 11:38:42

标签: php html

我尝试在php上使用一个小脚本,但它没有给出任何结果。

example.html的:



<form action="action.php" method="post">
 <p>URL <input type="text" name="url"></p>
  
 <p><input type="submit" value="OK"></p>
</form>
&#13;
&#13;
&#13;

action.php的:

<html>
  <? echo $_POST['url'];?>
</html>

即使网址字段已满,也无法提供任何结果。

3 个答案:

答案 0 :(得分:2)

首先确保action.php与包含表单的html文件位于同一目录中。

其次,将您的PHP代码更改为以下内容:

<?php echo $_POST['url']; ?>

关于短标签:

  

当PHP解析文件时,它会查找开始和结束标记   告诉PHP开始和停止解释   他们之间的代码。

     

PHP还允许短开标签http://php.net/manual/en/language.basic-syntax.phptags.php

短标记示例:

<? echo $variable ?>
<?= $variable ?>

这些不包含开头&#34;&lt;?php&#34;并且根据上面的引用不鼓励。

但是,从5.4开始,无论php.ini中的短标记设置如何,短标记的第二个版本将始终打开。这意味着

 <?= $variable ?>

将始终可用。

如何在PHP 5.4之前使用短标记

打开你的php.ini文件,搜索&#34; short_open_tag&#34;并将值更改为&#34; 1&#34;。 http://php.net/manual/en/ini.core.php#ini.short-open-tag

答案 1 :(得分:1)

你应该使用<?php echo $_POST['url']; ?>  这是标准标签 代替 <? echo $_POST['url'];?>

<? ?>是短标签,需要在php.ini中启用short_open_tag

答案 2 :(得分:0)

change this :

 <html>
 <? echo $_POST['url'];?>
 </html>

由此:

<html>
<?php echo $_POST['url'];?>
</html>

UPDATE:快速启用php短标签,在.htaccess中输入以下内容:

php_flag short_open_tag on