Ajax 500内部服务器错误?

时间:2015-08-13 00:33:39

标签: javascript php jquery ajax

也许它是一个讽刺但每个情况都不同:)

我从Ajax请求中获取一个String并将其处理为此函数

function convertHashtags($str){

    $text = $str;
    $regex = '/#(\w+)/';
    preg_match_all($regex, $text, $allMatches, PREG_SET_ORDER);
    foreach ($allMatches as $matches) { 
        $engine->checkHashtag($matches[0]);
    }

    $regex2 = "/#+([a-zA-Z0-9_]+)/";
    $str = preg_replace($regex2, '<a href="hashtag.php?tag=$1">$0</a>', $str);
    return($str);
}

然后我想在每个结果中为每个结果引擎将其插入数据库。 当我注释掉引擎线然后它的工作。 return $ matches [0];也在努力!

这是我的引擎功能代码

function checkHashtag($tag) {
    return true;
}

至少这是我的错误信息......

  

500(内部服务器错误)发送

     

@ jquery-1.10.2.js:8706jQuery.extend.ajax

     

@ jquery-1.10.2.js:8136(匿名函数)

     

@(index):797jQuery.event.dispatch

     

@ jquery-1.10.2.js:5095jQuery.event.add.elemData.handle

     

@ jquery-1.10.2.js:4766

为什么不起作用?

*什么是$ Engine? *
包含的课程

require_once('../PATH/engine_class.php');
$engine = NEW engine_class();

1 个答案:

答案 0 :(得分:0)

preg_match_all返回一个int,保存匹配数。我注意到你没有检查是否有0场比赛。您的代码假定至少有一个有效匹配。例程返回什么值?