【发布时间】:2019-03-11 03:43:46
【问题描述】:
我有一个数据库,我在其中一列中存储了一个长字符串。我正在使用两个不同的分隔符。我正在使用 $$ 来分隔用户可以输入的 4 个输入。我使用 ** 来分隔每次用户输入输入(跟上历史)。我正在提取数据并尝试在我的 php 文件中显示它。这是我的代码的一部分。当没有找到 ** 分隔符(仅找到 $$)时,我的代码正在工作。但是,当我因查找 ** 而输入 if 语句时,我的代码将退出打印数据。我没有收到任何错误,只是页面上的空白部分。我在 while ($lUB
if ($userData[$index] != "")
{
if (strpos($userData[$index], '**') != false)
{
echo "here 0";
$userDataB = explode("**", $userData[$index]);
$lUB = 0;
$bSize = count($userDataB);
while ($lUB < $bSize)
{
$dataparse = explode("$$", $userDataB[$lUB]);
echo ("<tr>");
echo("<td>");
echo $dataparse[1];
echo("</td>");
echo("<td>");
echo $dataparse[2];
echo("</td>");
echo("<td>");
echo $dataparse[0];
echo("</td>");
echo("</tr>");
unset($dataparse);
$lUB = $lUB+1;
}
}
else
{
echo "here 1";
$dataparse = explode("$$", $userData[$index]);
echo ("<tr>");
echo("<td>");
echo $dataparse[1];
echo("</td>");
echo("<td>");
echo $dataparse[2];
echo("</td>");
echo("<td>");
echo $dataparse[0];
echo("</td>");
echo("</tr>");
}
}
else
{
echo "here 2";
}
【问题讨论】:
-
检查错误日志。空白屏幕通常是致命错误。检查状态码是否为 500。另外,
echo不是一个函数,因此它不需要(),它可以连接起来。例如echo ("<tr>"); echo("<td>");可以是echo "<tr><td>";。explode("$$"可能会因为双引号引起问题,单引号不会尝试扩展,并且处理速度会更快。 -
error_reporting(E_ALL); ini_set('display_errors', 1);请使用它来查看页面上的错误。我建议你添加到你的数据库中,每次用户做某事时,一个新行这会让你的生活更轻松,除此之外,在某些时候你的字符串会非常大,这会减慢你的系统/服务器