PHP仅通过电子邮件发送填充值
我有一个在线表格,上面列出了我孩子棒球联赛的投手信息。该表单允许输入多个投手(未知数量)。我在循环搜索结果以将其通过电子邮件发送给我时遇到问题 以下是表格中的代码(适用于投手1-每个表格最多10名投手):PHP仅通过电子邮件发送填充值,php,email,for-loop,Php,Email,For Loop,我有一个在线表格,上面列出了我孩子棒球联赛的投手信息。该表单允许输入多个投手(未知数量)。我在循环搜索结果以将其通过电子邮件发送给我时遇到问题 以下是表格中的代码(适用于投手1-每个表格最多10名投手): 投手姓名 年龄投球 请选择团队 第一队 第二小组 第三队 年龄 8. 9 以下是我的php电子邮件函数中的内容: $size_array = count($_POST['pitcher[]']); for ($i=0; $i<$size_array; $i++){ $message
投手姓名
年龄投球
请选择团队
第一队
第二小组
第三队
年龄
8.
9
以下是我的php电子邮件函数中的内容:
$size_array = count($_POST['pitcher[]']);
for ($i=0; $i<$size_array; $i++){
$message .= <<<MESSAGE
<tr><td>$_POST['pitcherteam'][$i]</td>
<td><b>$_POST['pitcher'][$i]</td>
<td><b>$_POST['pitcherage'][$i]</b></td>
<td><b>$_POST['pitcherteam'][$i]</b></td></tr>
MESSAGE;
}
$size\u array=count($\u POST['pitcher[]”);
对于($i=0;$i检查$\u POST['pitcher'][$i]的值是否已设置,如果未设置,则跳过消息:
if( !isset($_POST['pitcher'][$i]} ) continue;
或者,对于您的代码:
$size_array = count($_POST['pitcher[]']);
for ($i=0; $i<$size_array; $i++){
if( !isset($_POST['pitcher'][$i]} ) continue;
$message .= <<<MESSAGE
<tr><td>$_POST['pitcherteam'][$i]</td><td><b>$_POST['pitcher'][$i]</td><td><b>$_POST['pitcherage'][$i]</b></td><td><b>$_POST['pitcherteam'][$i]</b></td></tr>
MESSAGE;
}
$size\u array=count($\u POST['pitcher[]”);
对于($i=0;$i更改输入以使用[]
语法,而不是设置数字:
<tr bgcolor=#cfcfcf>
<td align=center><b>Team</td><td align=center><b>Pitcher Name</td>
<td align=center><b>Age</td><td align=center><b>Pitches</td></tr>
<tr>
<td><select name="pitcherteam[]" size="1">
<option>PLEASE SELECT TEAM
<option>Team 1</option>
<option>Team 2</option>
<option>Team 3</option>
</select></td><td>
<input type=text size=50 name="pitcher[]"></td>
<td><select name="pitcherage[]" size="1">
<option>AGE
<option>8
<option>9
</select></td>
<td><input type="text" size=3 name="pitcherpitches[]"></td></tr>
这是我根据您嵌入的代码编写的一个快速脚本。大约一小时前,我查看了您的问题,当时反应有限,从那时起,您似乎已经解决了您的问题。我想我不会扔这段代码,而是提供它,以防它对您或其他人有帮助
test.php::
print "<html><head><title>title</title></head><body>";
$size_array = count($_POST['pitcher']); // <-- notice there's no []
for ($i=0; $i<$size_array; $i++){
if($_POST['pitcher'][$i] != ''){
$team = $_POST['pitcherteam'][$i];
$pitchername = $_POST['pitchername'][$i];
$age = $_POST['pitcherage'][$i];
$pitcherpitches = $_POST['pitcherpitches'][$i];
if ($pitchername) {
print "$team, $pitchername, $age, $pitcherpitches<br>";
}
}
}
$form_input_row = '<table><tr bgcolor=#cfcfcf><td align=center><b>Team</td><td align=center><b>Pitcher Name</td><td align=center><b>Age</td><td align=center><b>Pitches</td></tr><tr><td><select name="pitcherteam[]" size="1"><option>PLEASE SELECT TEAM<option>Team 1</option><option>Team 2</option><option>Team 3</option></select></td><td><input type=hidden size=50 name="pitcher[]" value="somedata"><input type=text size=50 name="pitchername[]"></td><td><select name="pitcherage[]" size="1"><option>AGE<option>8<option>9</select></td><td><input type="text" size=3 name="pitcherpitches[]"></td></tr></table>';
print "<form method=\"POST\">";
for ($j = 0; $j<6; $j++) {
print $form_input_row;
}
print "<input type=\"submit\" value=\"submit\">";
print "</form></body></html>";
打印“标题”;
$size\u array=count($\u POST['pitcher']);//这里没有任何MySQL?您可以检查以确保它们是isset
,或者检查以确保输入了内容if($\u POST['PitchRage'][$i]!==”){
。我喜欢这个概念!所以-我可以对所有10个条目重复表单代码,php将能够区分?而且-出于某种原因-当我将php代码块添加到我的电子邮件表单时-它会抛出500个内部服务器错误。其中有什么我需要提前声明的吗?这一部分被注释掉后效果很好。我我已经修复了这个问题,请参见我的编辑。在herdoc中,变量周围需要{}
。此外,关闭herdoc的消息;
前不得在同一行有任何空格。是的,您可以重复HTML和PHP将有所区别(这是有效的,因为它们以正确的顺序依次出现)。
$size_array = count($_POST['pitcher']); // <-- notice there's no []
for ($i=0; $i<$size_array; $i++){
if($_POST['pitcher'][$i] != ''){
$message .= <<<MESSAGE
<tr><td>{$_POST['pitcherteam'][$i]}</td>
<td><b>{$_POST['pitcher'][$i]}</td>
<td><b>{$_POST['pitcherage'][$i]}</b></td>
<td><b>{$_POST['pitcherteam'][$i]}</b></td></tr>
MESSAGE;
}
}
print "<html><head><title>title</title></head><body>";
$size_array = count($_POST['pitcher']); // <-- notice there's no []
for ($i=0; $i<$size_array; $i++){
if($_POST['pitcher'][$i] != ''){
$team = $_POST['pitcherteam'][$i];
$pitchername = $_POST['pitchername'][$i];
$age = $_POST['pitcherage'][$i];
$pitcherpitches = $_POST['pitcherpitches'][$i];
if ($pitchername) {
print "$team, $pitchername, $age, $pitcherpitches<br>";
}
}
}
$form_input_row = '<table><tr bgcolor=#cfcfcf><td align=center><b>Team</td><td align=center><b>Pitcher Name</td><td align=center><b>Age</td><td align=center><b>Pitches</td></tr><tr><td><select name="pitcherteam[]" size="1"><option>PLEASE SELECT TEAM<option>Team 1</option><option>Team 2</option><option>Team 3</option></select></td><td><input type=hidden size=50 name="pitcher[]" value="somedata"><input type=text size=50 name="pitchername[]"></td><td><select name="pitcherage[]" size="1"><option>AGE<option>8<option>9</select></td><td><input type="text" size=3 name="pitcherpitches[]"></td></tr></table>';
print "<form method=\"POST\">";
for ($j = 0; $j<6; $j++) {
print $form_input_row;
}
print "<input type=\"submit\" value=\"submit\">";
print "</form></body></html>";