提交按钮只保存一个输入框
Submit Button only saves one input box
我正在尝试从输入框中收集数据,但提交按钮仅适用于一个文本框。有没有简单的方法来解决这个问题?代码:
<?php
if(isset($_POST['textdata']))
{
$data=$_POST['textdata'];
$fp = fopen('data.txt', 'a');
fwrite($fp, $data);
fclose($fp);
}
?>
<!DOCTYPE html>
<html>
<head>
<link rel="shortcut icon" href="/favicon.ico" />
<title>Yeet!</title>
<style>
html {
background-color: #181818;
}
body {
color: lightgray;
text-align: center;
font-family: monospace;
}
</style>
</head>
<body>
<form method="post">
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<input type="submit" name="submit">
</form>
</body>
</html>
我只是不想让我的所有文本框都有提交按钮。提前致谢!
每个 <input>
都应该有一个唯一的名称:
<input type="text" name="textdata_a"><br>
<br>
<input type="text" name="textdata_b"><br>
$_POST
将包含所有这些键,用户输入的值为:
$textdataA = $_POST['textdata_a'];
$textdataB = $_POST['textdata_b'];
您的输入都具有相同的名称,这就是浏览器实际上只传输其中一个的原因。
<input type="text" name="textdata">
<input type="text" name="textdata">
给它们不同的名称并在 PHP 端以这种方式访问它们:
<input type="text" name="firstline">
<input type="text" name="secondline">
在PHP中:
$_POST['firstline']; // will contain the data of the first input-element
$_POST['secondline']; // will contain the data of the secondinput-element
// and so on...
如果您需要无限数量的输入字段,您也可以使用数组:
<input type="text" name="mytextdata[]">
<input type="text" name="mytextdata[]">
在PHP中:
$_POST['mytextdata']; // will contain the data of ALL the input fields as an array
您可以(例如)像这样将它们合并在一起:
$dataOfAllInputs = implode(PHP_EOL, $_POST['mytextdata']);
但是,对于这种情况,使用 textarea HTML element 可能更合理。
我正在尝试从输入框中收集数据,但提交按钮仅适用于一个文本框。有没有简单的方法来解决这个问题?代码:
<?php
if(isset($_POST['textdata']))
{
$data=$_POST['textdata'];
$fp = fopen('data.txt', 'a');
fwrite($fp, $data);
fclose($fp);
}
?>
<!DOCTYPE html>
<html>
<head>
<link rel="shortcut icon" href="/favicon.ico" />
<title>Yeet!</title>
<style>
html {
background-color: #181818;
}
body {
color: lightgray;
text-align: center;
font-family: monospace;
}
</style>
</head>
<body>
<form method="post">
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<br>
<input type="text" name="textdata"><br>
<input type="submit" name="submit">
</form>
</body>
</html>
我只是不想让我的所有文本框都有提交按钮。提前致谢!
每个 <input>
都应该有一个唯一的名称:
<input type="text" name="textdata_a"><br>
<br>
<input type="text" name="textdata_b"><br>
$_POST
将包含所有这些键,用户输入的值为:
$textdataA = $_POST['textdata_a'];
$textdataB = $_POST['textdata_b'];
您的输入都具有相同的名称,这就是浏览器实际上只传输其中一个的原因。
<input type="text" name="textdata">
<input type="text" name="textdata">
给它们不同的名称并在 PHP 端以这种方式访问它们:
<input type="text" name="firstline">
<input type="text" name="secondline">
在PHP中:
$_POST['firstline']; // will contain the data of the first input-element
$_POST['secondline']; // will contain the data of the secondinput-element
// and so on...
如果您需要无限数量的输入字段,您也可以使用数组:
<input type="text" name="mytextdata[]">
<input type="text" name="mytextdata[]">
在PHP中:
$_POST['mytextdata']; // will contain the data of ALL the input fields as an array
您可以(例如)像这样将它们合并在一起:
$dataOfAllInputs = implode(PHP_EOL, $_POST['mytextdata']);
但是,对于这种情况,使用 textarea HTML element 可能更合理。