مقاله خود را جستجو کنید
در این بخش میتوانید مقاله خود به صورت حرفه ای جستجو نماید.
در این بخش میتوانید مقاله خود به صورت حرفه ای جستجو نماید.
<!DOCTYPE html> <html> <head> <title>Short Url</title> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" > <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" > <script src="http://code.jquery.com/jquery-2.2.4.min.js" type="text/javascript"></script> </head> <body> <div class="container"> <div class="row"> <br /><br /> <div style="display: none; font: 12px tahoma; text-align: right;" class="alert alert-danger" role="alert"></div> <div style="display: none; font: 12px tahoma; text-align: right;" class="alert alert-success" role="alert"></div> <div style="text-align:center; display:none;" id="load"><img width="100" height="75" src="loading.gif" ></div> <div class="jumbotron"> <div class="form-group"> <label for="exampleInputEmail1">Url :</label> <input type="url" name="url" class="form-control" id="url" placeholder="Url"> </div> <div class="form-group"> <label for="exampleInputEmail1">Name :</label> <input type="text" name="name" class="form-control" id="name" placeholder="Name"> </div> <div class="form-check"> <label class="form-check-label"> <input name="hide" id="hide" class="form-check-input" type="checkbox"> Iframe </label> </div> <div class="form-group"> <button id="submit" class="btn btn-success btn-block" > Submit </button> </div> </div> <div style="display:none; height: 180px; " id="show" class="jumbotron"> <div class="col-lg-12"> <div class="form-group"> <label for="exampleInputEmail1">Download :</label> <input class="form-control" name="show" type="text" value=""> </div> <h4><a href="" > مشاهده لینک </a></h4> </div> </div> </div> </div> <script type="text/javascript"> jQuery(document).ready(function($) { $("#submit").click(function(event) { $('.alert-danger').hide(); $('.alert-success').hide(); var url = $('#url').val(); var name = $('#name').val(); if($("#hide").is(":checked")) var hide = '1'; else var hide = '0'; jQuery.ajax({ url: 'http://192.168.0.1/Learn/short-url/function.php', type: 'POST', data: { url : url , name : name , hide : hide}, success: function(data) { if(data == 'empty'){ $('.alert-danger').show('slow'); $('.alert-danger').text(' هیچ آدرسی وارد نشده است '); }else if(data == 'invalid'){ $('.alert-danger').show('slow'); $('.alert-danger').text(' آدرس را به صورت صحیح وارد نماید '); }else if(data == "nameError"){ $('.alert-danger').show('slow'); $('.alert-danger').text(' فیلد نام تکراری است . از نام دیگری استفاده کنید '); }else if(data.length > 0){ $('.alert-success').show('slow'); $('.alert-success').text(' با موفقیت ثبت شد '); $('#show').show('slow'); $("#show a").attr('href', 'http://192.168.0.1/Learn/short-url/'+data); $("#show input").attr('value', 'http://192.168.0.1/Learn/short-url/'+data); } }, error: function(xhr, textStatus, errorThrown) { //called when there is an error } }); }); }); </script> </body> </html>- در خط 73 ، 91 و 92 آدرس وب سایت خودتون رو وارد کنید . فایل Function :
<?php $url = clean($_REQUEST['url']); $name = clean($_REQUEST['name']); $hide = clean($_REQUEST['hide']); function clean($str) { $str = @trim($str); if(get_magic_quotes_gpc()) { $str = stripslashes($str); } return $str; } if(empty($url) && empty($name)) echo "empty"; elseif(filter_var($url, FILTER_VALIDATE_URL) === false) echo "invalid"; else{ $conn = new PDO('mysql:dbname=short-url;host=localhost', 'root', '123'); //$conn->exec('set names utf8'); $stmt = $conn->prepare("INSERT INTO urls (url , name , hide) VALUES (:url,:name,:hide)"); $stmt->bindParam(':url', $url); $stmt->bindParam(':name', $name); $stmt->bindParam(':hide', $hide); $query = $stmt->execute(); if($query == '1') echo $name; else echo "nameError"; }- در خط 19 باید اطلاعات دیتابیس رو وارد کنید . تمامی درخواست های صفحه اصلی به صفحه فانکشن ارجا داده میشه ... فایل redirect :
<?php function clean($str) { $str = @trim($str); if(get_magic_quotes_gpc()) { $str = stripslashes($str); } return $str; } $name = clean($_REQUEST['url']); if(isset($name)){ $conn = new PDO('mysql:dbname=short-url;host=localhost', 'root', '4345086'); $stmt = $conn->prepare("SELECT * FROM urls WHERE name = :name ORDER BY id DESC LIMIT 1" ); $stmt->bindParam(':name', $name); $stmt->execute(); $value = $stmt->fetchObject(); if($stmt->rowCount() > 0){ if($value->hide == '1'){ ?> <body style="margin:0px;padding:0px;overflow:hidden"> <iframe src="<?php echo $value->url ?>" frameborder="0" style="overflow:hidden;height:100%;width:100%" height="100%" width="100%"></iframe> </body> <?php }else{ header("Location: ".$value->url); exit; } }else{ echo "<div style='text-align: center; margin-top: 20px; font: bold 15px arial;'>چنین آدرسی وجود ندارد</div>"; } }- خط 12 -> اطلاعات دیتابیس . - این صفحه برای ریدایرکت کردن لینک ها می باشد . برای اینکه لینک قشنگ دیده بشه با استفاده از Htaccess آدرس رو این صورت در اوردیم (http://yourdomain.com/link) و اما اگر نخواهیم از htaccess استفاده کنیم آدرس به این صورت هست (http://yourdomain.com/redirect.php?url=link) . فایل htaccess :
Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+)$ redirect.php?url=$1 [L]