从URL php get方法中获取值

时间:2014-05-06 13:04:49

标签: php

http://sath3g.altervista.org/jsonint.html?id=5678

我必须使用php的id值。 我试过这种方式,但它不起作用。

<html>
<head>
</head>
<body>
  <?php
    $variabile_get = $_GET['id']; 
    echo( $variabile_get);
  ?>
</body>
</html>

我什么都没看到。有人可以帮帮我????

5 个答案:

答案 0 :(得分:1)

使用此

jsonint.html 它应该是.php文件不像.html

   <html>
    <head>
    </head>
    <body>
      <?php
        $variabile_get = $_GET['id']; 
        echo $variabile_get;  //your wrong code here
      ?>
    </body>
    </html>

答案 1 :(得分:1)

如果要在HTML中打印变量值,则应始终使用转义函数,例如htmlspecialchars,以防止对您网站的攻击,因此代码应为:

   <html>
    <head>
    </head>
    <body>
      <?php
        $variabile_get = $_GET['id']; 
        echo htmlspecialchars($variabile_get);  
      ?>
    </body>
    </html>

当然,如果您希望id为int,您也可以更改行:

        $variabile_get = $_GET['id']; 
        echo htmlspecialchars($variabile_get);  

        $variabile_get = intval($_GET['id']); 
        echo $variabile_get;  

答案 2 :(得分:1)

问题不在您的代码中,您只是使用了错误的文件扩展名,请将其更改为.php。 此外,您必须通过过滤从用户收到的数据来阻止您的网站受到XSS之类的攻击,只需使用htmlspecialchars()功能,它可以将有问题的字符更改为html显示字符。并且不要忘记检查$_GET['id']的值是否为数字。请使用intval()

实施例

当用户在数据字段中输入字符&#34;&gt;&#34;时,他可以应用标记<script>并执行危险的操作。我们不希望他这样做,因此我们会对收到的数据应用htmlspecialchars(),输出结果为&lt;,浏览器仍会显示&#34;&gt;&#34;字符。

旁路

用户可以通过使用不同的多字节编码来绕过此功能,因此我们需要使用ENT_QUOTES选项,如下所示:

   echo htmlspecialchars($input, ENT_QUOTES); 

答案 3 :(得分:0)

更改http://sath3g.altervista.org/jsonint.html?id=5678http://sath3g.altervista.org/jsonint.php?id=5678

使用以下代码

<html>
<head>
</head>
<body>
<?php
$variabile_get = $_GET['id']; 
echo $variabile_get;
?>
</body>
</html>

答案 4 :(得分:0)

将文件的.html扩展名更改为.php。 PHP不会处理未被识别为PHP文件的文件。