Välkommen till linuxportalen.se!

Linuxportalen.se är Sveriges största och aktivaste webbplats för användare av öppen- och fri programvara.

Du besöker Linuxportalen.se som gäst vilket begränsar din möjlighet att använda webbplatsens alla funktioner. Genom att registera dig som medlem får du inte bara möjlighet att söka bland webbplatsens innehåll, skapa nya och delta i befintliga diskussioner, skapa din egen blogg, kommunicera med andra medlemmar genom privata meddelanden och delta i omröstningar. Du får också tillgång till Veckans Kadavro - en seriestrip unikt skapad för Linuxportalen.se!

Registeringen sker snabbt och är helt kostnadsfri - tveka inte, bli medlem idag!

Php + twitter + oauth

Jag har haft väldiga problem för att kunna autentsiera mot twitter med php för att kunna integrera vissa funktioner direkt i min hemsida. Nu har jag löst det och täntke skriva vad jag gjorde för att lösa det.

1. Skaffa twitteroauth.php och oauth.php från http://github.com/abraham/twitteroauth/

2. ha en requestfil som har som funktion att skicka användaren vidare till twitter för att låta applikationen ansluta till ett konto

<?PHP
session_start();
//Configuration

$_LE_CONFIG['consumerKey'] = "minkey";
$_LE_CONFIG['consumerSecret']= "secretkey";
//includes
include("twitteroauth.php");

//use the consumerkey and the consumersecret to establish a connection
$connection = new TwitterOauth($_LE_CONFIG['consumerKey'], $_LE_CONFIG['consumerSecret']);
//use the connection made to retrieve some tokens
$_SESSION['tokens'] = $connection->getRequestToken();


$redirect_url = $connection->getAuthorizeURL($_SESSION['tokens']);
header("location:$redirect_url");
?>

din secretkey och consumerkey får du från http://twitter.com/oauth när du registrerar din klient. Där måste du dessutom ange vilken sida som den ska skickas tillbaka till. Sidan som ser tar imot anropet ser ut så här:

<?PHP
session_start();
//config
$_LE_CONFIG['consumerKey'] = "minkey";
$_LE_CONFIG['consumerSecret']= "minsecret";

//includes
include("twitteroauth.php");
//create new connection after being directed back from twitter
$connection = new TwitterOauth($_LE_CONFIG['consumerKey'],$_LE_CONFIG['consumerSecret'],$_SESSION['tokens']['oauth_token'],$_SESSION['tokens']['oauth_token_secret']);

$_SESSION['tokens'] = $connection->getAccessToken();

$connection = new TwitterOauth($_LE_CONFIG['consumerKey'],$_LE_CONFIG['consumerSecret'],$_SESSION['tokens']['oauth_token'],$_SESSION['tokens']['oauth_token_secret']);
$content = $connection->get('account/verify_credentials');
print "<br>";
print "Loggad in som: ".$content->name;

?>

Det här gör inte så mycket, men om du sparar de sista tokensena du får så kan du vara inloggad under lång tid genom att skicka med den tokenen.