bugfix> javascript > 投稿

lkドメイン検索用のスクリプトを作成しました。

これはコードです

<form action="" method="GET">
    <input type="text" name="dm" placeholder="tx">
</form>
<?php 
if (isset($_GET["dm"])) {
    $domain = $_GET["dm"];
    $res = file_get_contents("https://www.domains.lk/domainsearch/doDomainSearch?domainname=$domain");
    echo $domain;
}
?>
<script type="text/javascript">
    var data = '<?php echo $res ?>';
    document.write(data);
</script>

varデータはローカルホストに表示されます。しかし、サーバーでホストしている場合、結果は表示されません。

これはサーバーがホストするファイルですhttp://vishmaloke.com/dm/ser.php

回答 1 件
  • SOLUTION #1

    allow_url_fopen という名前のPHP設定があります 。これは、リモートURLからコンテンツを取得できるようにする必要があります。 .htaccess でできます  ファイル。

    次の行を .htaccess に入れます  設定を有効にするディレクトリ内のファイル:

    php_value allow_url_fopen On
    
    

    注意:上記の設定は、 .htaccess と同じディレクトリにのみ適用されます  ファイルが配置されました。


    SOLUTION #2

    または、 php.ini を更新できます

    PHP.INIの更新

    php.ini に次の行を追加します

    allow_url_fopen = On;
    
    

    SOLUTION 3

    curl を使用することをお勧めします   file_get_contents の代わりに

    CURL UPDATE

    if (isset($_GET["dm"]))
    {
        $domain = $_GET["dm"];
        // curl
        $curl_handle=curl_init();
        curl_setopt($curl_handle, CURLOPT_URL,"https://www.domains.lk/domainsearch/doDomainSearch?domainname=$domain");
        curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
        curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
        $res = curl_exec($curl_handle);
        curl_close($curl_handle);
    
        echo $domain;
    }
    
    

あなたの答え