显示php结果而不重新加载页面

时间:2015-11-26 13:10:27

标签: javascript php jquery

我正在开发域可用性检查表单,它运行良好。我要做的下一件事是在我的网站上实现这一点,并在搜索表单下显示脚本的输出。 我设法做到了这一点,但在提交表单后页面重新加载。如何停止重新加载并显示输出?

我知道这是由一些Jquery完成的,但我无法弄清楚它是如何工作的。

这是表格

<form action="domaincheck.php" id="domain-searchform">
            <input class="input-text" name="domain" id="s" placeholder="Vul hier je domeinnaam in" type="text" />
                <select class="witch ts-option-search" name="tld">
                          <option value=".be">.be</option><option value=".nl">.nl</option>
                          <option value=".com">.com</option>
                          <option value=".net">.net</option>
                          <option value=".org">.org</option>
                          <option value=".eu">.eu</option>
                          <option value=".uk">.uk</option>
                          <option value=".co.uk">.co.uk</option>
                 </select>
                 <input type="submit" value="Zoek" id="searchsubmit">
         </form>

目前使用此

调用结果
<h3 style="color:#ffffff;font-size:30px; text-align: center">
<?=$result?>
</h3>

这是用于检查域是否可用的php脚本。

<?php

require_once('Transip/DomainService.php');

if(isset($_GET['domain']) && strlen($_GET['domain']) > 0)
{
    $dom = $_GET['domain'];
    $tld = $_GET['tld'];

    $domain = $dom . $tld;

    try
    {
        $availability = Transip_DomainService::checkAvailability($domain);
        switch($availability)
        {
      //check availability
            case Transip_DomainService::AVAILABILITY_INYOURACCOUNT:
                $result = htmlspecialchars($domain)
                            . ' is not available.';
            break;

            case Transip_DomainService::AVAILABILITY_UNAVAILABLE:
                $result = htmlspecialchars($domain)
                            . ' is not available for transfer.';
            break;

            case Transip_DomainService::AVAILABILITY_FREE:
                $result = htmlspecialchars($domain)
                            . ' is available for registration.';
            break;


            case Transip_DomainService::AVAILABILITY_NOTFREE:
                $result = htmlspecialchars($domain)
                            . ' is registered. If you are the owner,
                                    you could transfer it.';
            break;
        }
    }
    catch(SoapFault $e)
    {
    //error
        $result = 'An error occurred: ' . htmlspecialchars($e->getMessage());
    }
}
else
{
    $domain = '';
    $result = '';
}

?>

2 个答案:

答案 0 :(得分:0)

我建议看一下AJAX / PHP(例如来自W3Schools的教程。

所以基本上通过单击提交按钮可以调用JavaScript函数,该函数将所谓的HttpRequest发送到服务器以调用PHP脚本。然后将PHP脚本的输出发送回浏览器,您可以显示结果而无需重新加载页面。

答案 1 :(得分:0)

http://code.tutsplus.com/tutorials/submit-a-form-without-page-refresh-using-jquery--net-59

本教程帮助我完成了目标。

我今天早些时候对ajax,jquery和php如何协同工作感到困惑。我现在可以看到逻辑,另一个经验教训:)

无论如何,thx给出一些提示!