2013-10-24 132 views
0

我试图找出并跟踪浏览器以及在收到表单提交时是否正在使用代理。我有以下代码如下:回声值隐藏字段?

<?php 

$browser = $_SERVER['HTTP_USER_AGENT']; 
$ip_address = $_SERVER['REMOTE_ADDR']; 
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { 
    $ip_address = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])); 
} 

?> 

例如我尝试了下面,但它不起作用。它不会提交我的表单中的任何数据。

我在做什么错?

echo ('<input type="hidden" name="browser" value="' . $browser . '" />'); 
+0

你不能在php字符串内嵌入php代码,并期望它能够工作。 –

回答

4
echo '<input type="hidden" name="browser" value="'.$browser.'">' 
2

我在做什么错?

  • 你是不是引用变量与$
  • 你需要从字符串正确逃生变量值

尝试printf

printf('<input type="hidden" name="browser" value="%s">', $browser); 
1

要结合回声和打印(这两者都是一样的)。另一件事,你有没有关闭输入HTML元素(注意不是标志我已经添加了最终以上):

echo ('<input type="hidden" name="browser" value="' . $browser . '" />');

2

尝试这种方式

echo ("<input type='hidden' name='browser' value='".$browser."'"); 
2
echo ('<input type="hidden" name="browser" value="'.$browser.'">'); 

与尝试this -> value="'.$browser.'"类似的东西