【问题标题】:var in textarea from sql?来自sql的textarea中的var?
【发布时间】:2021-01-10 09:37:48
【问题描述】:

我尝试使用从 sql 获取的 textarea 内容制作一个表单,它运行良好,除了我想做的一件事情......

我在 sql 中有一些文本,例如“hi $name,welcome”(例如) 当我在 textarea 中回显它时,我得到相同的“hi $name,welcome” 但我希望 $name 更改为我想要的...

<?php
    $supplier = "David";
    $branch = "name";
    $msg = $row['msg'];
?>
      <textarea rows="7" name="msg" cols="50" style="font-size: 11"><?php echo $msg; ?></textarea>

编辑: 这就是我得到的:

这就是 sql:

我该如何改变它?

谢谢!

【问题讨论】:

  • 您可以使用str_replace() 将消息中的文本$name 替换为$name 变量中的值。

标签: php html textarea


【解决方案1】:

如果您想在数据库中存储一条消息并在输出中替换一些单词,请不要将其保存为 PHP 代码。而是为变量数据创建一个带有占位符的模板,例如:

Hi, {supplier}. Lorem ipsum {branch} 

然后用str_replace()替换那些

$msg = str_replace(['{supplier}', '{branch}'], [$supplier, $branch], $msg);

【讨论】:

    【解决方案2】:

    您的语法错误。像这样写:

    <?php
    $name="David";
    $msg=$row['msg'];
    ?>
    <textarea rows="7" name="msg" cols="50" style="font-size: 11"><?php echo $msg ?></textarea>
    

    你必须打开 php 标签然后关闭它,然后才能像我写的那样在 php 标签中写入 html。

    【讨论】:

    • 当然我做到了,这不是问题...它只向我打印从 sql 中获取的 $msg 并忽略了味精本身中的 $name...
    • 这就是我得到的:i.imgur.com/R0UdoyH.jpg 我试过“.$var.”和 {$var} 但正如你所看到的......什么都没有和 sql 表:i.imgur.com/MWyHxJS.jpg
    • @SaarAsor - 这些图片想向我们展示什么?与您的问题唯一相同的是“嗨”这个词。他们只是让事情变得不清楚。
    • @MagnusEriksson 这是数据库中的一个字段:-B
    • 如果你想在你的数据库中做“类似模板”的条目,你应该决定你使用哪种格式。不是“.$foo”。一个变量和 {$bar} 另一个。此外,您需要了解数据库内容通常会被排除,因此不会替换变量。所以它只是打印出 $foo 和 $bar 而不替换变量。
    猜你喜欢
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 2014-09-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多