猿问

如何使用 PHP 中的用户定义变量更改 HTML 文档上的某些文本?

我正在尝试使用本地主机上的 PHP 文件编辑本地 .html 文件和该文件的特定内容。我想添加用户可以输入信息的表单,PHP 文件将使用用户定义的变量替换文本/填充 HTML 文档中的文本。有什么建议?


我已经尝试过 str_replace、file_get_contents 和 file_put_contents,但它仍然无法正常工作。我的本地 xampp 服务器正在运行 Apache 2。


    $main = $_POST['value'];

    echo $main;

“值”来自 HTML 表单,我曾尝试使用它来获取用户输入。


function replace_string_in_file($filename, $string_to_replace, $replace_with){

    $content=file_get_contents($filename);

    $content_chunks=explode($string_to_replace, $content);

    $content=implode($replace_with, $content_chunks);

    file_put_contents($filename, $content);

}

$filename="alt.html";

$string_to_replace="yes";

$replace_with = "$main";

replace_string_in_file($filename, $string_to_replace, $replace_with)

在 HTML 文件中,我设置了一些名为“是”的文本。我希望输出将文本“是”更改为定义的用户变量,但它根本不会改变。


下面是我要编辑的另一个文档中的 HTML 文本: <div class="t m0 x7 h6 y9 ff2 fs6 fc0 sc0 ls0 ws0">Date of certification: <span class="_ _6"> </span><span class="ff1">17 June 2019</span></div>


用户输入数据的表单数据也如下:


<form method="post" action="">

<input type="text" name="value">

<input type="

此外,为了确保人们知道,该变量$replace_with = "$main"; 是 HTML 中的表单数据。$main = $_POST['value']; 谢谢


浮云间
浏览 135回答 1
1回答

智慧大石

试试这个,我们希望 alt.html 中的“日期”更改为任何用户输入。用于要求用户输入的 HTML 文件<!DOCTYPE html><html><body><h2>User Input</h2><form action="process.php" method="POST">&nbsp; &nbsp;Enter your value: <input type="text" name="user_data" value="">&nbsp; <br><br>&nbsp; <input type="submit" value="Submit"></form>&nbsp;</body></html>进程.php<?phpfunction replace_string_in_file($filename, $string_to_replace, $replace_with){&nbsp; &nbsp; $content=file_get_contents($filename);&nbsp; &nbsp; $content_chunks=explode($string_to_replace, $content);&nbsp; &nbsp; $content=implode($replace_with, $content_chunks);&nbsp; &nbsp; file_put_contents($filename, $content);}$filename="alt.html";$string_to_replace="Date";$main = $_POST['user_data'];$replace_with = "$main";echo $replace_with;replace_string_in_file($filename, $string_to_replace, $replace_with);alt.html<div class="t m0 x7 h6 y9 ff2 fs6 fc0 sc0 ls0 ws0">Date of certification: <span class="_ _6"> </span><span class="ff1">17 June 2019</span></div>
随时随地看视频慕课网APP
我要回答