如果不是搜索结果提交表单中的搜索词

时间:2012-10-05 18:45:06

标签: php search conditional-statements

如果没有结果,我想提交搜索词(例如foo表示的意思)

详细说明:

我有if if条件的搜索功能,如果有搜索结果,则显示“未找到搜索结果”的其他信息

我希望在一个表单提交中更改“找不到搜索结果”,其中值将是用户尝试查找的任何搜索词。所以...

if search result found {
 //display result
} else {
  // auto submit below form if above condition is not true ( means if no search result found )

    <form action="to url" method="post">
    <input name="title" type="text" />
    </form>
}

以上是我用来提交表格的表格。

修改

这是实际代码

.......

if (count($results))
            $qa_content['title']=qa_lang_html_sub('main/results_for_x', qa_html($inquery));
        else { ?>

            <form id="nosearch" method="POST" action="<?php echo qa_opt('site_url'); ?>ask" class="top-askbox" >
                    <input name="title" type="text" value="<?php echo $inquery; ?>">
            </form>
            <script>$("#nosearch").submit();</script>

        <?php }

.......

这是我工作的部分。实际文件太长了。

2 个答案:

答案 0 :(得分:1)

你可以使用这样的东西

 if (is in search ) {
 //display result
} else {
  // auto submit below form if above condition is not true ( means if no search result found )

    <form action="to url" id="main" method="post">
    <input name="title" type="text" value="$value" />
    </form>
<script>$("#main").submit();</script>

}

答案 1 :(得分:0)

好的,让我们再试一次。我的论点是,当你可以在php中轻松处理它时,让前端自动发布一个表单是荒谬的......

if (count($results))
    $qa_content['title']=qa_lang_html_sub('main/results_for_x', qa_html($inquery));
else { 
    $url = 'http://whatever.com/your-search-file.php';
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL, $url);
    curl_setopt($ch,CURLOPT_POST, count($_POST));
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($_POST));
    $result = curl_exec($ch);
    curl_close($ch);

    if($results)
    {
        //echo results or do whatever
    }
    else
    {
        // your auto post failed. deal with it
    }
}

假设cUrl是您的选择。如果没有,那么请使用其他人提到的jquery选项。