Tutorial: Script de acortadores múltiples

vellenger Seguir

Programador
No recomendado
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
9 Mar 2013
Mensajes
1.045
Edad
36
Aqui les comparto este simple script que acorta los enlaces automaticamente de tres servidores conocidos como adfly linkbucks y shorte.
Haremos uso de la api de c/u de estos acortadores, el cual deberemos ingresarlo manualmente, el resto queda solo por usarlo.
Consiste simplemente de ingresar las url que querramos que sean acortadas, se pueden usar de un solo acortador o de a dos o de a 3 a un solo enlace, ( adfly/linkbucks/shorte). Se puede ingresar de 1 enlace o de a varios.
Este pequeño sistemita usa un formulario para el envio de las url de enlaces que ingresamos, el cual generara en un archivo txt, este guardara los enlaces ingresados, ademas de hacer uso de cookie para guardar la opción elegida para acortar.
Posteriormete ya guardado los enlaces en el txt se procede a leer los enlaces guardados y atraves de unas funciones ya definidas para cada acortados quedara que lo programado actue en el proceso.


Creamos el archivo principal index.php​

HTML:
<html>
 <head>
 <title>Acortador M&uacute;ltiple</title>
 <link href="vellenger.css" rel="stylesheet" type="text/css" />
</head>
<body>
	<br>
	<center><a href="index.php"><img class="imgh" alt="Inicio" title="Inicio" src="img/home.png"></a></center>
    <form action="short.php" method="POST">
	<table align="center">
	  <tr>
	   <td colspan="4"><textarea id="styled" name="url"></textarea></td>
	 </tr>
	 <tr align="center">
	   <td><input type='checkbox' name="1" value="1">adf.ly</td>
	   <td><input type='checkbox' name="2" value="5" >linkbucks.com</td>
	   <td><input type='checkbox' name="3" value="10">shorte.st</td>
	  </tr>
	  <tr><td colspan="4"><hr></td></tr>
	 <tr>
	  <td colspan="4" align="center"><input class="boton" type="submit" value="Enviar"></td>
	 </tr>
	 </table>
	</form>
<br>
</body>
</html>


Creamos el archivo que guardara los enlaces ingresado short.php​

HTML:
<?php
    if(isset($_POST["url"])){
	$v=0;$i=1;
	while($i<=4){
    @$v = $v+$_POST[$i];
    $i++;	
	}
	setcookie("short",$v,time()+60,"/");	
	$n = $_POST["url"];				 
	$u = "vellenger.txt";
	$cursor = fopen($u,"w");
	fwrite($cursor,$n);
    fclose($cursor);	
	header("Location: ver.php");	
	}else{
	header("Location: index.php");
	}
?>

Creamos el archivo configs.php el cual contendra los datos de sus acortadores.​

HTML:
<?php 
    //----------------------------------- ADFLY ----------------------------------------------//
	
    $key ="3bd6b0258113948a45ffc17734b120bf"; // API de adfly
    $uid ="911049";                           // ID de Referido
    $domain = 'adf.ly';                       // Dominio
    $advert_type = 'int';                     // Tipo
	
	
	//----------------------------------- LINKBUKCS ----------------------------------------------//
	
	$keyapi = "24b3dd1e3d3a4adf";             // API KEY
    $user = "vellenger";                      // USUARIO
	
	//----------------------------------- SHORTE ----------------------------------------------//
	
    $Skey="29a101baad589539828087ab5aeaf334";  // API KEY

?>


El archivo funciones.php contiene las funciones para acortar los enlaces​

HTML:
<?php
 
	function adfly($url, $key, $uid, $domain, $advert_type){
				  $api = 'http://api.adf.ly/api.php?';
				  $query = array(
					'key' => $key,
					'uid' => $uid,
					'advert_type' => $advert_type,
					'domain' => $domain,
					'url' => $url
				  );
				  $api = $api . http_build_query($query);
				  if ($data = file_get_contents($api))
					return $data;
	}
	
	function linkbucks($url,$keyapi,$user) {       
        $adts = '2';   
        $contype = '1';
        $domainss = 'linkbucks.com';  
        $postData = array('originalLink' => $url, 'user' => $user, 'apiPassword' => $keyapi, 'contentType' => $contype, 'adType' => $adts, 'domain' => $domainss);
        $jsonData = json_encode($postData);
        $curlObj = curl_init();
        curl_setopt($curlObj, CURLOPT_URL, 'https://www.linkbucks.com/api/createLink/single');
        curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($curlObj, CURLOPT_HEADER, 0);
        curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
        curl_setopt($curlObj, CURLOPT_POST, 1);
        curl_setopt($curlObj, CURLOPT_POSTFIELDS, $jsonData);
        $response = curl_exec($curlObj);
        $json = json_decode($response);
        curl_close($curlObj);
        return $json->link;
    }
	
	function shorte($url,$Skey){
            global $tsCore;    
            $curl_url = "https://api.shorte.st/s/".$Skey."/".$url;
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $curl_url);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            $result = curl_exec($ch);
            curl_close($ch);
            $array = json_decode($result);
            $shortest = $array->shortenedUrl;
            return $shortest;
    }
	
	
	

?>


Creamos en archivo ver.php el cual mostrara el resultado obtenido​

HTML:
<html>

<head>
 <title>Enlaces Acortados</title>
 <link href="vellenger.css" rel="stylesheet" type="text/css" />
</head>
<body>
<br>
	<center><a href="index.php"><img class="imgh" alt="Inicio" title="Inicio" src="img/home.png"></a></center>
<?php
	
	include 'funciones.php';
	include_once 'configs.php';
	

	
	$file = fopen("vellenger.txt", "r") or exit("Unable to open file!");
    echo "<div class=\"resv\"><div class=\"data\">";
	while(!feof($file))
	{
	$url = fgets($file);
    
	if($_COOKIE['short']==1){
	echo  adfly($url, $key, $uid, $domain,$advert_type);
	}elseif($_COOKIE['short']==5){
	echo linkbucks($url,$keyapi,$user);
	}elseif($_COOKIE['short']==10){
	echo shorte($url,$Skey);
	}elseif($_COOKIE['short']==6){
	$a1= adfly($url, $key, $uid, $domain,$advert_type);
	echo linkbucks($a1,$keyapi,$user);
	}elseif($_COOKIE['short']==11){
	$a1= adfly($url, $key, $uid, $domain,$advert_type);
	echo shorte($a1,$Skey);
	}elseif($_COOKIE['short']==15){
	$a1= linkbucks($url,$keyapi,$user);
	echo shorte($a1,$Skey);
	}elseif($_COOKIE['short']==16){
	$a1= adfly($url, $key, $uid, $domain,$advert_type);
	$a2= linkbucks($a1,$keyapi,$user);
	echo shorte($a2,$Skey);
	}else{
	if($url==''){
	echo "No se ingreso una url.";
	}else{
	echo $url;
	}
	}
	echo "<br>";
	}
	echo "</div></div>";
	fclose($file);
?>
<br>
</body>
</html>

Finalmente creamos el archivo vellenger.css​

HTML:
body{
background:
linear-gradient(163deg, transparent 0px, transparent 1px, #222 1px, #222 14px, transparent 14px),
linear-gradient(161deg, transparent 0px, #181818 1px, #222 2px, #222 15px, transparent 15px),
linear-gradient(343deg, transparent 0px, transparent 1px, #222 1px, #222 14px, transparent 14px),
linear-gradient(343deg, transparent 0px, transparent 1px, #222 1px, #222 14px, transparent 14px);
background-color: #121212;
background-position: 2px 1px, 23px 16px,48px 15px, 21px 30px;
background-size: 48px 30px;
 }
 
 textarea#styled {
	width: 600px;
	height: 120px;
	border: 3px solid #cccccc;
	padding: 5px;
	font-family: Tahoma, sans-serif;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
}
 textarea#styled:focus{
background:#e5fff3;
}
table tr td textarea{
text-align:center;
}
table{
color:#FFF;
}
.boton{
    background:#0D98FB;
    background-image: -webkit-linear-gradient(top,#0D98FB,#1A5DB3);
    background-image: -moz-linear-gradient(top,#0D98FB,#1A5DB3);
    background-image: -o-linear-gradient(top,#0D98FB,#1A5DB3);
    background-image: linear-gradient(to bottom,#0D98FB,#1A5DB3); 
    border: 1px solid #125CB5;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: 0 1px 1px #71C0FD inset;
    -webkit-box-shadow: 0 1px 1px #71C0FD inset;
    -o-box-shadow: 0 1px 1px #71C0FD inset;
    box-shadow: 0 1px 1px #71C0FD inset;
    padding: .8em 1.8em;
    color: white;
    font-weight:normal;
    text-decoration:none;
}
.boton:hover {
    background:#1A5DB3;
    background-image: -webkit-linear-gradient(bottom,#0D98FB,#1A5DB3);
    background-image: -moz-linear-gradient(bottom,#0D98FB,#1A5DB3);
    background-image: -o-linear-gradient(bottom,#0D98FB,#1A5DB3); 
    background-image: linear-gradient(to top,#0D98FB,#1A5DB3);
    cursor: pointer;
}

.resv
{
background:#37A6DE url('img/shorte.jpg');
width:655px;
max-width:655px;
height:auto;
padding:10;
min-height:200px;
height:auto;
margin:10px auto;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
-o-border-radius: 5px;
border-radius: 5px;
text-align:center;
}

.data
{
background:#FFF;
width:380px;
height:auto;
margin:10px auto;
margin-top:100px;
padding:10px 0;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
-o-border-radius: 5px;
border-radius: 5px;
border:1px solid #CCC;
}
.imgh
{
margin:10px auto;
}
#vellenger{
margin:10px auto;
}
#vellenger a{
text-decoration:none;
color:red;
}

1.jpg

2.jpg

3.jpg

4.jpg



Aqui una demo para que prueben su funcionamiento.

DEMO

Aqui les dejo los acrchivos para los que quieran usarlo

https://www.firedrive.com/file/6AF42CE4944C3757


Eso seria todo, es un simple ejemplo de uso de las api que nos ofrecen cada servidor de los acortadores. De seguro hay cosas para mejorar y se podria agregar mas acortadores.
Para los que son de utilizar estos acortadores aqui podran hacer uso de ellos sintener que entrar a sus cuentas y podran acortar un mismo enlace todas las veces que quieran, uno seguido de la otra..

:encouragement:
 
Última edición:

kanikase

Préstamo
Ómicron
Programador
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
22 Feb 2014
Mensajes
4.716
Muy buena :welcoming: me la descargaré, pero para usarla desde localhost :3
Mi me agrada :fatigue:
 

emski

Pi
Verificación en dos pasos activada
Desde
27 Jul 2012
Mensajes
5.187
Muy buena :):greedy_dollars::p8::witless::p8::ghost::drunk::encouragement:;):star2::encouragement:
 

Trotan

Gamma
Social Media
Desde
11 Jun 2014
Mensajes
406
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
excelente aporte :)
 

LuiggiC

VIP
Ómicron
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
Suscripción a IA
Desde
27 Jul 2014
Mensajes
4.562
Gracias :encouragement:
 

Joss

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
23 Ene 2013
Mensajes
92
:eek: increíble, los 3 acortadores juntos, gracias. :encouragement:
 

vellenger

Programador
No recomendado
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
9 Mar 2013
Mensajes
1.045
Edad
36
Gracias por sus comentarios, es mi primer aporte.. ^^ , asi como lo ven se puede agregar mas acortadores, y todos los que tengan una Api se puede integrar..​
 

shruken

Préstamo
Pi
SEO
Desde
27 May 2012
Mensajes
5.158
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
muy bueno aunque solo se puede elegir de a un solo acortador por link,igual es un aportazo
 

vellenger

Programador
No recomendado
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
9 Mar 2013
Mensajes
1.045
Edad
36
muy bueno aunque solo se puede elegir de a un solo acortador por link,igual es un aportazo

Como elegir de un solo acortador? Si lo probe y acorte 1 enlace con los tres acortadores..
Proba nuevamente...
 

shruken

Préstamo
Pi
SEO
Desde
27 May 2012
Mensajes
5.158
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Como elegir de un solo acortador? Si lo probe y acorte 1 enlace con los tres acortadores..
Proba nuevamente...
si elijo 3 solo me muestra el link de shorte xD

ah veo que lo que hace es pasar de shorte a linbucks y de linbucks a adfly xD
pense que que daba los 3 enlaces osea uno para cada uno xD

yo generalmente trabajo con uno solo eso de redirigir de un acortador a otro a veces causa ban y ademas es demasiado molesto para el usuario
 
Última edición:

vellenger

Programador
No recomendado
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
9 Mar 2013
Mensajes
1.045
Edad
36
si elijo 3 solo me muestra el link de shorte xD

ah veo que lo que hace es pasar de shorte a linbucks y de linbucks a adfly xD
pense que que daba los 3 enlaces osea uno para cada uno xD

yo generalmente trabajo con uno solo eso de redirigir de un acortador a otro a veces causa ban y ademas es demasiado molesto para el usuario


Ha, pues se puede hacer de esa manera, es cuestion de uso ...
Pero se puede modificar y hacer como lo quieres...
 

shruken

Préstamo
Pi
SEO
Desde
27 May 2012
Mensajes
5.158
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Ha, pues se puede hacer de esa manera, es cuestion de uso ...
Pero se puede modificar y hacer como lo quieres...

si si gracias,le echaré un ojo con mas tiempo luego,ahi te dejé un me agrada
 
Arriba