为什么脚本无法正常工作?

时间:2011-11-04 11:19:36

标签: php frameworks kohana

我创建了添加评论脚本。

来源 -

if (isset($_GET['do']) and $_GET['do'] == 'comment'){//Ja viss kārtībā, turpinam
                if (!empty($_POST['name']) and !empty($_POST['artcl_id']) and !empty($_POST['homepage']) and !empty($_POST['text'])){
                    $name = trim($_POST['name'],' ');
                    $artcl_id = trim($_POST['artcl_id'],' ');
                    $homepage = trim($_POST['homepage'],' ');
                    $text = trim($_POST['text'],' ');
                    Model::factory('index')
                            ->send_commentar(mysql_real_escape_string($name), mysql_real_escape_string($artcl_id), mysql_escape_string($homepage), mysql_real_escape_string($text), mysql_real_escape_string(time()));
                    ?>
                    <script type="text/javascript">
                        alert("Thank you! :)");
                    </script>
                    <meta http-equiv="REFRESH" content="0;url=/article/<?php echo $slug; ?>"/>
                    <?php

                } else {
                    $this->template->content = View::factory('index/error')->set('message', 'How to submit empty comment?');
                }
        }

但是如果我在输入字段中放置空格,脚本会发送空格。为什么脚本无法正常工作?

4 个答案:

答案 0 :(得分:2)

检查空字段后,您将删除空格。难道你不想转过身来吗?首先删除空格,然后检查空字段?

答案 1 :(得分:1)

这需要成为形式逻辑的一课 严格来说,基于间接观察,你不能说“trim()不起作用”。

只有直接(和可复制!)验证才能成为此类陈述的理由。

如果您在调用后立即检查trim()结果,则可以归咎于此功能 否则,您必须调试代码才能找到实际原因 希望这会有所帮助:)

答案 2 :(得分:0)

trim函数只会删除开始和结束的空格... 如果你想从整个字符串中删除空格,那么你可以使用str_replace()函数..

$artcl_id = str_replace(" ","",$artcl_id);

同样聪明,这可以适用于你所有的领域......

答案 3 :(得分:-1)

尝试trim($var,"\s")也许结束字符不是“”但是它是“\ s”