为了创建我的网站的概述,我想存储人们所做的每一个动作。 所以我做了这个部分:
<?php
if($errors) {
foreach($errors as $error) {
$result = mysql_query("INSERT INTO deverror (id, ip, page, message, datum) VALUES (NULL, '".$ip."', 'http://scrshot.com/dev.php', '".$error."', '".$today."')", $connection);
}
}
?>
现在我遇到了问题。如果我犯了错误,它会在错误屏幕上生成3行:
如何将所有这些“错误/错误”放在一行中,像这样?
(注意:是的,我知道我使用的是mysql而且它很愚蠢。)
答案 0 :(得分:3)
使用换行符破坏您的错误数组。
<?php
if($errors){
$allErrors = implode("\n", $errors);
$result = mysql_query("INSERT INTO deverror (id, ip, page, message, datum) VALUES (NULL, '".$ip."', 'http://scrshot.com/dev.php', '".$allErrors."', '".$today."')", $connection);
}
?>
显然你在现场环境中使用mysqli / PDO。
答案 1 :(得分:0)
<?php
if($errors){
$allErrors = "";
foreach($errors as $error) {
$allErrors .= $error."\n";
}
$result = mysql_query("INSERT INTO deverror (id, ip, page, message, datum) VALUES (NULL, '".$ip."', 'http://scrshot.com/dev.php', '".$allErrors."', '".$today."')", $connection);
}
?>
这里的php端有点生疏,但应该这样做,在将所有错误传递给你的字符串之前连接所有错误。
但是请注意,这可能会对SQL注入有所帮助。 考虑准备声明!