2012-04-14 12 views
0

So, ich mache eine Datei-Hosting-Site, und bin mit einigen Formular-Builder, um mit anzufangen. Diese Builder unterstützen jedoch PHP nicht. Nun möchte ich einige URLs verkleinern, wie kann ich das in reinem HTML machen, ohne PHP-Methoden hinzuzufügen. Mir geht es gut mit goo[dot]gl, bit.ly, tinyurl.com, oder was auch immer!Verkleinern Sie eine URL in HTML

Antwort

2

HTML ist eine Auszeichnungssprache.

Wenn Sie eine API oder etwas Codierorientiertes verwenden möchten, müssen Sie eine echte Programmiersprache verwenden - Sie wählen: für Ihren Zweck wäre PHP die beste Wahl.

Jetzt, wenn Sie sich endlich entscheiden, PHP zu verwenden, ist es wirklich einfach.

-Code (für TinyURL):

<?php 
    function createTinyUrl($strURL) { 
     $tinyurl = file_get_contents("http://tinyurl.com/api-create.php?url=".$strURL); 
     return $tinyurl; 
    } 
?> 

Verbrauch:

<?php 
    $myTinyUrl = createTinyUrl("http://www.yourdomain.com/some-long-url-here"); 
?> 

Und das ist alles! ;-)

1

Wenn die Formularersteller PHP nicht unterstützen, müssen Sie es selbst schreiben. Mit PHP lässt sich sehr einfach arbeiten.

Hier ist ein Beispiel für Sie. (Angenommen, Sie haben PHP auf Ihrem Web-Host einrichten :)

Speichern Sie die Datei mit der Endung .PHP (oder was auch immer Ihre Web-Host verwendet - vielleicht .php5 für php5 sein) statt .HTML

können Sie verwenden Sie den Super-global $ _GET aus der URL bestimmte Variablen in der Adressleiste ex zu akzeptieren .:

$short_url = $_GET["q"]; 

Da ich eine Variable immer den Namen ‚q‘, wenn Sie die Seite mit einem Parameter mit dem Namen zugreifen ' q 'Ich werde diese Variable gespeichert haben:

http://your.site/?q=shorturl # Assumes your index file takes the 'q' variable 

Nun liegt es an Ihnen, was Sie mit dieser Variable machen sollen. Das Beste wäre, eine MySQL-Datenbank einzurichten, so dass, wenn Sie einen Wert wie ‚SHORTURL‘ bekommen Sie eine schnelle SQL-Abfrage nicht die vollständige Adresse ab zurückzukehren .:

# 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; 
} 

Es gibt wirklich nicht viel, um es in PHP mit MySQL.

+0

Ich denke, deine Antwort ist in der Nähe von genial. ABER: Ich bin zu 99% sicher, dass es mit dem, was das OP will, NICHTS zu tun hat. Du wolltest gerade ein URL-Kürzungsskript für ihn schreiben, während er nur ein paar URLs gekürzt haben wollte; das ist alles ... ;-) –

+0

@ Dr.Kameleon lol, mein Schlechter. – Ozzy