Php For循环正在通过电子邮件发送表中每行一个字符
我在这个问题上纠缠了一段时间。我的要求是通过电子邮件将数据从mySQL发送到客户端。我从公司代码库中的另一个页面获取代码,当它通过电子邮件发送时就可以正常工作 我遇到的问题是,它每行只发送一个字符 这是我的密码:Php For循环正在通过电子邮件发送表中每行一个字符,php,html,mysql,Php,Html,Mysql,我在这个问题上纠缠了一段时间。我的要求是通过电子邮件将数据从mySQL发送到客户端。我从公司代码库中的另一个页面获取代码,当它通过电子邮件发送时就可以正常工作 我遇到的问题是,它每行只发送一个字符 这是我的密码: $message = " <br /><hr /><br /><table style='font-size: 12px; width:100%'> <tr>
$message = "
<br /><hr /><br /><table style='font-size: 12px; width:100%'>
<tr>
<td td width='25%'><strong>Oligo Name</strong></td>
<td width='10%'><strong>Base</strong></td>
<td width='10%'><strong>Scale</strong></td>
<td width='10%'><strong>Mod</strong></td>
<td width='10%'><strong>Mod Position</strong></td>
<td style='word-break: break-all; width: 500px;'><strong>Oligo Sequence</strong></td>
<td width='15%' style='text-align: right'><strong>Price</strong></td>
</tr>";
$SampleID = 0;
$maxrow = $OligoQty;
for ($i; $i < $maxrow; $i++) {
if(trim($SampleName) == '' && trim($Sequence) == '')
continue;
// $SampleID++;
$bases = preg_replace('/\s+/', '', $Sequence);
$seq_length = strlen($bases);
$message .= "
<tr>
<td width='200'>{$SampleIDS} . {$SampleName[$i]}</td>
<td width='40'>{$sequence_length[$i]}</td>
<td width='40'>{$SampleScale[$i]}</td>
<td width='40'>{$modification[$i]}</td>
<td width='40'>{$mod_position[$i]}</td>
<td style='word-break: break-all; width: 500px;'>{$Sequence[$i]}</td>
</tr>";
</tr>";
}
$message=”
Oligo名称
基础
比例
Mod
模块位置
寡核苷酸序列
价格
";
$SampleID=0;
$maxrow=$Qty;
对于($i;$i<$maxrow;$i++){
if(trim($SampleName)=''&&trim($Sequence)='')
继续;
//$SampleID++;
$bases=preg_replace('/\s+/','.$Sequence);
$seq_length=strlen($base);
$message.=”
{$SampleIDS}.{$SampleName[$i]}
{$sequence_length[$i]}
{$SampleScale[$i]}
{$modification[$i]}
{$mod_位置[$i]}
{$Sequence[$i]}
";
";
}
当我删除for循环时,它会完美地打印出行:
我相信我的for循环有问题,导致它这样做,我不知道为什么。我将$maxrow硬编码为2,这就是为什么我的电子邮件有2行。如果有任何帮助,将不胜感激!嗯,看起来有点奇怪-你应该在数组上循环。我认为你的值需要使用$I someplace、 更像$SampleID[$i]。这些变量是从哪里来的?Hello@dgig,is通常有[$i]在这些变量之后。我删除了这些变量,以显示在没有for循环的情况下会是什么样子。不管怎样,我仍然每行获得一个字符。请看,那么您所做的是在字符串上循环,而不是在数组上循环。
$SampleScale
不是数组-php将允许您调用$SampleScale[3]
在一个字符串上,打印出第四个字符,这是您看到的。删除循环和[$i]
s,您会得到什么结果?正如我在问题中提到的,我知道删除循环和[$i]可以使它工作(这是我问题中的最后一张图片)。你的评论确实帮助我理解了它是在字符串中循环的!这确实帮助了我,因为我正在将代码与另一个具有相同代码的页面进行比较。我很感激。好的。非常好,祝你好运。