2012-04-28 115 views
-2

我试图在html文件中显示从数据库中检索的名称。推荐几个博客,仍然无法显示价值在html中获取php值

<?php 
$result=mysql_query("SELECT * from `Data` where Emp_Id = $EmpID") 
$info = mysql_fetch_array($result); 
$Emp_ID=$info['Emp_ID']; 
<html><head> 
<body> 
<input name="emp_number" value=<?php echo $Emp_ID?>/> 
<input name='emp_name' value="<?php echo (isset($Emp_ID) ? htmlspecialchars($Emp_ID) : ''); ?>" /> 
<input name='emp_name'<?php echo (isset($Emp_Name)) ? ('value = "'.$Emp_Name.'"') : "value = \"\""; ?>/> 

</body></head></html> 
?> 

试过三种方法,但都没有奏效。

+0

和$ EMP_ID – Dhiraj 2012-04-28 17:10:00

回答

1

您应该使用模板系统。 除了那试试这个:

<?php 
$result=mysql_query("SELECT * from `Data` where Emp_Id = $EmpID") 
$info = mysql_fetch_array($result); 
$Emp_ID=$info['Emp_ID']; 
?> 

<html> 
<body> 

<input name="emp_number" value=<?php echo $Emp_ID; ?>/> 
<input name='emp_name' value="<?php echo (isset($Emp_ID) ? htmlspecialchars($Emp_ID) : ''); ?>" /> 
<input name='emp_name'<?php echo (isset($Emp_ID)) ? ('value = "'.$Emp_ID.'"') : "value = \"\""; ?>/> 

</body> 
</html> 
+0

后请关闭PHP的标签。当我从分贝EMP_ID查询,这是INT期待但POST请求是字符串。通过类型转换为int来解决。 – 2012-05-01 16:45:27

0

看起来像第三行的Emp_ID应该是Emp_Id或第一行的Emp_Id应该是Emp_ID

1

这是这一周,我已经看到了这个类似的问题第三次。

  • 请SO搜索和查找
  • $的EmpID是永远不会被设置
  • 您的代码相关的问题是容易受到SQL注入和你的网站很可能很快就会入侵
  • 您的查询有差异Emp_Id
  • 您有两个输入字段具有相同的名称,因此只有一个将在Post/Get返回
  • $ Emp_Name从不设置任何位置(猜测它应该来自form info?)
  • 同样在第三输入,你应该有一个空格,呼应之前,你的“价值=”字段