リンクhttp://devlup.com/programming/php/create-url-shortener-php/853/ を使用して短縮URLを作成しました。これにはEasyPhp5.3.6.0を使用していますが、必要なものが見つかりません出力、つまり、短縮された URL をクリックした後、元のページにリダイレクトされないことを意味します。おそらく、問題はデータベース側にあると考えています。これはデータベース側で行った手順です。何か問題がある場合はお知らせください。
最初に Configuration->PhpMyAdmin リンクに移動し、ここで「leaf」という名前のデータベースを作成しました。「Collation」という名前のドロップダウンを選択しませんでした。テーブル名を「team」、フィールド数を「3」にしてから、次のようにフィールドを変更しました。下
**Field id url shortened**
Type INT VARCHAR VARCHAR
Lenght/Values 255 10000 10000
Default None None None
次に、「id」を主キーとして作成しました
これらは、データベース処理が sortner.php で行われる php コードの一部です。
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("leaf", $con); //Replace with your MySQL DB Name
$urlinput=mysql_real_escape_string($_POST['url']);
$id=rand(10000,99999);
$shorturl=base_convert($id,20,36);
$sql = "insert into team values('$id','$urlinput','$shorturl')";
mysql_query($sql,$con);
echo "Shortened url is <a href=\"http://projects.devlup.com/url/". $shorturl ."\">http://devlup.com/". $shorturl ."</a>";
mysql_close($con);
?>
デコーダー.php で
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("leaf", $con); //Replace with your MySQL DB Name
$de= mysql_real_escape_string($_GET["decode"]);
$sql = 'select * from team where shortened="$de"';
$result=mysql_query("select * from team where shortened='$de'");
while($row = mysql_fetch_array($result))
{
$res=$row['url'];
header("location:$res");
}
私のすべてのファイルはルート フォルダー (www) の下にあります。つまり、C:\Program Files\EasyPHP-5.3.6.0\www\test です。