【问题标题】:PHP only displaying first word of string in tablePHP 只显示表中字符串的第一个单词
【发布时间】:2013-07-26 22:04:14
【问题描述】:

我正在从 MySQL 查询动态创建一个表。出于某种原因,下面的“注释”字段仅返回字符串的第一个单词,尽管当我使用echo($notes) 对其进行测试时,它显示得很好。 $status 设置类似,也很好。我错过了什么?我认为这与使用值预填充文本字段有关。我正在使用 codeigniter。

$notes = empty($row["notes"]) ? "None" : $row["notes"];
    echo($notes);
    echo('
    <tr class="even">
        <td class="status-icons">'.$error_level.'</td>
        <td>'.$row["name"].'</td>
        <td>'.$status.'</td>
        <td class="notes-col">
          <input type="text" name="submit_notes" value='.$notes.' class="notes-copy">
        </td>
    </tr>'

【问题讨论】:

  • 可能不相关,但是echo不是函数,正确的方式是'echo $notes;'
  • 很高兴知道,但这只是为了调试。有区别,还是只是一个标准?
  • according to the manual 它可以用作函数,但并不总是像它那样工作。
  • @thumbtackthief,只是用于区分函数和语言结构的标准。 echo 不是 php 中的函数

标签: php mysql sql codeigniter


【解决方案1】:

替换这个

   value='.$notes.'

    value="'.$notes.'"

双引号用于Value,因为它最初有两个引号,例如:value=""

【讨论】:

  • 总是小事 :) 就像开始 php 标签前的空格 -_-
  • @MarkBasmayor 对不起,我不是故意要打败你的 :),如果我知道你会发布它,我应该让你 :)。
  • 应该也应该对值进行urlencode,否则一个流浪的 ' 会炸毁它。
  • @Orangepill 我正在使用 codeigniter 和 django——这不是自动的吗?我用引号测试了一些值,似乎没有问题。
猜你喜欢
  • 2017-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多