0

这是所有的源代码,它是一个带有 2 个文本字段的简单表单:

我遇到的问题是在它调用旧函数的 HTML 中:

<input type="text" name="name" value="<?php old('name'); ?>">

旧功能代码:

function old($key)  if( !empty($_REQUEST['$key']))                
    {return htmlspecialchars($_REQUEST['$key']); }       
    return '';   
    }

出于某种原因,它不会保留旧值。我清除了缓存并重新启动了 Apache 以查看是否是问题所在,但没有。我没有想法了,有什么想法为什么旧功能被忽略了吗?


我的测试环境:Windows 7,xampp php5.3,但也上传到我的测试服务器,结果相同。

4

3 回答 3

5

你需要<input type="text" name="name" value="<?php print old('name'); ?>">

或者如果它支持速记<input type="text" name="name" value="<?= old('name'); ?>">

基本上,该函数正在被调用,但它没有在任何地方打印。

于 2012-12-19T05:08:33.047 回答
4

您缺少一个左括号...

function old($key) { 
   if(!empty($_REQUEST['$key'])) {
      return htmlspecialchars($_REQUEST['$key']); 
    }       
    return '';   //<---- I think you might need this in else
}
于 2012-12-19T05:09:22.080 回答
1

尝试

<input type="text" name="name" value="<?php print(old('name')); ?>">

和php

  function old($key) {
      if( !empty($_REQUEST['$key']))                
      {
        return htmlspecialchars($_REQUEST['$key']);
       }       
      return '';   
    }
于 2012-12-19T05:14:54.027 回答