如何将以HTML格式输入的字符串保存到文本文件中

时间:2016-02-16 21:58:00

标签: php html string

我有一个非常基本的PHP文件。我想有两个用于用户输入的文本框和一个提交按钮。用户将输入他们的名字和姓氏,然后我想附加或创建一个TXT文件,其中包含从field1和field2输入的数据。

可能我会以错误的方式解决这个问题。我将发布两种我一直在修补的方法。

<html>
 <head>
  <title>Field1 & 2</title>
 </head>
 <body>
  <form>
  What is your name?<br>
  <input type="text" name="field1"><br>
    <input type="text" name="field2"><br>
   <input type="submit" value="Submit">
  </form>

 <?php
$txt= $_POST['field1'].' - '.$_POST['field2']; 
$var_str3 = var_export($txt, true);        //is this necessary?
$var3 = "$var_str3";                       //is this necessary? 
file_put_contents('fields.txt', $var3.PHP_EOL, FILE_APPEND);
?>

 </body>
    </html>

我无法弄清楚如何将field1和field2中的数据转换为字符串变量。

我也使用这个php而不是上面列出的部分搞砸了

  <?php
 $txt= "data.txt";
 if (isset($_POST['field1']) && isset($_POST['field2'])) {
$fh = fopen($txt, 'a'); 
    $txt=$_POST['field1'].' - '.$_POST['field2']; 
   fwrite($fh,$txt); // Write information to the file
   fclose($fh); // Close the file
 }
?>

2 个答案:

答案 0 :(得分:3)

您应该了解HTML Forms和PHP Form Handling

在您的代码中,您必须使用表单HTTP方法。并且必须将表单数据发送到PHP文件进行处理。

在这段代码中我使用HTTP PSOT方法你也可以使用GET方法,结果会一样。这两种方法用于收集表单数据。并且php文件名是<script> $(document).ready(function() { var townId = <?= (isset($_POST['town_id'])) ? (int) $_POST['town_id'] : 0; ?>, suburbId = <?= (isset($_POST['suburb_id'])) ? (int) $_POST['suburb_id'] : 0; ?>; if (townId > 0 || suburbId > 0) { // make your api call here with townId and suburbId } }); </script>

的index.html

"action.php"

action.php的

  <html>
     <head>
      <title>Field 1 & 2</title>
     </head>
     <body>
        <form action="action.php" method="post">
          What is your name?<br>
          <input type="text" name="field1"><br>
            <input type="text" name="field2"><br>
           <input type="submit" value="Submit">
        </form>
     </body>
    </html>

答案 1 :(得分:1)

让我们从http://www.w3schools.com/html/html_forms.asp

获取一个片段
<form action="action_page.php" method="post">
  First name:<br>
  <input type="text" name="firstname" value=""><br>
  Last name:<br>
  <input type="text" name="lastname" value=""><br><br>
  <input type="submit" value="Submit">
</form>

注意第一行:在表单提交时,调用php脚本:action_page.php

action_page.php是您的网页,其中包含表单和嵌入式php脚本。 action_page.php都显示空表单,然后处理提交的数据。

在第一行还指定提交的数据是使用POST方法发送的。

php部分将如下所示:

<?php
if( isset($_POST['firstname'] ) && isset( $_POST['lastname'] ) )
{
    $txt= $_POST['firstname'].' - '.$_POST['lastname'] . PHP_EOL; 
    file_put_contents('fields.txt', $txt, FILE_APPEND);
}
?>

if语句存在,因为第一次加载脚本action_page.php时,其目的只是显示表单而不接收任何POST数据。

当用户提交表单时,脚本将接收数据并存储到文件中。

该脚本也将(使用此方法)再次显示一个空表格,准备提交另一个条目。

你可以重新安排一些东西,以便有两个网页:一个只有表格,另一个有&#34;谢谢你&#34;消息和数据处理php脚本。

相关问题