我有一个非常基本的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
}
?>
答案 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脚本。