だから、私はファイルホスティングサイトを作っており、最初にいくつかのフォームビルダーを使用しています。ただし、これらのビルダーはPHPをサポートしていません。ここで、いくつかのURLを縮小したいのですが、PHPメソッドを追加せずに、純粋なHTMLでこれを行うにはどうすればよいですか。私は、、、、goo[dot]gl
または他bit.ly
のtinyurl.com
何でも大丈夫です!
2 に答える
HTMLはマークアップ言語です。
APIや、よりコーディング指向の何かを使用したい場合は、実際のプログラミング言語を使用する必要があります。選択するのは、目的に応じてPHPが最適です。
さて、最終的にPHPを使用することにした場合、それは本当に簡単です。
コード(TinyURL用):
<?php
function createTinyUrl($strURL) {
$tinyurl = file_get_contents("http://tinyurl.com/api-create.php?url=".$strURL);
return $tinyurl;
}
?>
使用法 :
<?php
$myTinyUrl = createTinyUrl("http://www.yourdomain.com/some-long-url-here");
?>
そしてそれがすべてです!;-)
フォーム ビルダーが PHP をサポートしていない場合は、自分で作成する必要があります。PHP は非常に使いやすいです。
これがあなたのための例です。(WebホストにPHPが設定されていると仮定します:)
.HTML の代わりに拡張子 .PHP (または Web ホストが使用するもの - php5 の場合は .PHP5 の可能性があります) を付けてファイルを保存します。
スーパーグローバル $_GET を使用して、アドレスバーの URL から特定の変数を受け入れることができます。例:
$short_url = $_GET["q"];
「q」という名前の変数を取得しているので、「q」という名前のパラメーターを使用してページにアクセスすると、その変数が格納されます。
http://your.site/?q=shorturl # Assumes your index file takes the 'q' variable
次に、その変数をどうするかはあなた次第です。最善の方法は、MySQL データベースをセットアップして、'shorturl' のような値を取得したときに、簡単な SQL クエリを実行して完全なアドレスを返すことができるようにすることです。例:
# Make DB connection
$db = new PDO("mysql:host='X.X.X.X';dbname='mydb'", $user, $secret);
# Function to search database for URL
function getFullURL($short_url) {
$result;
$sql = "SELECT full_url FROM tbl_addresses WHERE short_url='?'";
$query = $db->prepare($sql);
$query->execute(array($short_url));
$rows = $query->rowCount();
if ($rows == 1)
$result = $query->fetchAll();
return $result;
}
MySQL を使用する PHP には、それほど多くのことはありません。