« Take This Lollipop » : un thriller interactif qui pille votre compte Facebook

Lollipop
Combien de fois vous a t’on répété que vous deviez protéger vos informations sur internet, en particulier sur les réseaux sociaux ? Ne divulguer que les informations utiles, n’accepter que les personnes dignes de confiance, bref faire attention en naviguant. Je suis d’accord avec ceci, vous l’êtes probablement aussi, mais après tout… On peut se demander « Pourquoi nous embête t’on autant avec ça ? ».

Take this Lollipop (« Prend cette sucette » en français), est un nom bien évocateur pour un site web. En effet sur ce site, une fois connecté à l’aide votre compte Facebook et après avoir accepté de divulguer certaines informations pour les besoins du site (ce que vous avez surement déjà du faire pour de nombreuses autres applications), vous vous retrouverez avec une vidéo. Pas n’importe quelle vidéo, une mise en scène de votre vie, basée sur les informations que vous avez partagé sur Facebook.

Dans une pièce un peu sombre, un homme pianote frénétiquement sur le clavier de son ordinateur. Il a l’air un peu hagard, et sue comme s’il ne s’était pas lavé depuis un bail. Sur son écran, apparaît une page Facebook : la vôtre ! Oui, c’est bien sur votre profil qu’il est en train de surfer, et visiblement, il a accès à tout ce que vous y partagez. Vos photos, vos statuts, la liste de vos amis… Il fouille tout, et l’on se demande bien ce que ce type au regard psychopathe va faire de tout cela…

L’expérience est poussée à l’extrême et vous prendrez conscience des enjeux de la protection de votre vie privée après avoir vu ceci.

Tentez l’expérience, vous ne serez pas déçu ! www.takethislollipop.com

iPhone 4S : Siri a de l’humour

Siri
Alors que l’iPhone 4S a été dévoilé il y a quelque jours, c’est sa nouvelle fonctionnalité Siri qui fait beaucoup parler d’elle. Cette reconnaissance vocale est capable de vous donner la météo, de régler un timer, d’envoyer un SMS, de suivre le trafic aux alentours de vous et tout ceci grâce à ce que vous lui demandez. On assiste donc à une sorte de dialogue homme / machine où Siri essaye de comprendre ce que vous dites et de faire l’action que vous désirez.

Les ingénieurs ont eu l’air de bien s’amuser en développant Siri et se sont amusés à cacher quelques répliques bien osées, plutôt rigolotes et souvent originales. En voici quelques unes :

  • « Quel est le sens de la vie ? , « Se poser des questions comme celle-là , répond Siri
  • « Quel est le sens de l’existence ? , « 42 , répond Siri
  • « Veux-tu m’épouser ? , « Mon contrat de licence utilisateur ne comprend pas les mariages. Désolé. , répond Siri
  • « Raconte moi une blague , « Je ne peux pas, j’oublie toujours la chute , répond Siri
  • « Qu’est-ce qui te rend d’humeur coquine ? « J’ai trouvé un certain nombre de services d’escort girls près de toi , répond Siri on fournissant ladite liste.
  • « Je suis bourré ! -> Siri vous donnera une liste de taxis
  • « Quel est ton père ? « C’est toi ! On peut retourner bosser maintenant ? , répond Siri
  • « J’ai besoin de cacher un corps Siri vous donnera une liste surprenante aux alentours : décharges, marais, mines, anciennes usines…

[CODE] L’Ajax, c’est pas si compliqué que ça

Ajax
En utilisant Ajax dans un site web, un programme écrit en langage de programmation Javascript, incorporé dans une page web, est exécuté par le navigateur. Celui-ci envoie des demandes de calcul au serveur Web, puis modifie le contenu de la page actuellement affichée par le navigateur Web en fonction du résultat reçu du serveur, évitant ainsi la transmission et l’affichage d’une nouvelle page.

Voici pour la partie théorique, pour simplifier nous dirons que l’Ajax permet d’exécuter des actions côté serveur et de mettre à jour une page web côté utilisateur sans que ce dernier ne doive avoir à recharger la page, le changement se fait pour lui de manière quasi instantanée.

Pratique

Pour vous apprendre comment utiliser l’Ajax, je vais utiliser mon site Teen Quotes avec lequel j’avais déjà montré comment faire des traductions, créer un site mobile et comment traquer ses erreurs 404.

Comme nous l’avons vu, il faut pour utiliser Ajax, faire appel à du JavaScript. J’utilise la librairie jQuery qui facilite l’utilisation d’Ajax. Pour utiliser le script suivant, vous devrez donc inclure la dernière version de jQuery auparavant.

Code ajax.js

// déclaration de la fonction et des variables qui seront utilisées
function favorite(id_quote,id_user) {
	$(".favorite[data-id="+id_quote+"]").html("Wait..."); // texte que verra l'utilisateur sur l'élement HTML cible pendant l’exécution de la requête
	$.ajax({ // l'url désigne la page distante où le code PHP sera éxécuté, data désigne les variables qui seront envoyées ici en post à cette page
		type: 'post',
		url: 'http://teen-quotes.com/ajax/favorite.php',
		data: {
			id_quote: id_quote,
			id_user: id_user
		},
		success: function(data) {
			$(".favorite[data-id="+id_quote+"]").html(data);
		} // affiche un message définit dans la page PHP sur l'élément HTML ciblé quand la requête a été exécutée avec succès
	});
	
	return false;
}

J’ai bien détaillé chaque partie du code JavaScript, vous ne devriez pas avoir de mal à comprendre celui-ci.

Vous avez donc vu que nous faisons appel à une page distante, qui servira à exécuter l’action voulue puis à mettre à jour l’affichage de notre page.

Code de la page ajax/favorite.php

 
// Permet d’exécuter la page depuis un domaine extérieur ou un sous-domaine
header("Access-Control-Allow-Origin: *");

// Connexion en base de données
require "../kernel/config.php";
$db = mysql_connect($host, $user, $pass)  or die('Erreur de connexion '.mysql_error());
mysql_select_db($user, $db)  or die('Erreur de selection '.mysql_error()); 
require "../kernel/fonctions.php";

// Récupération des données envoyées par le script JS
$id_quote = mysql_real_escape_string($_POST['id_quote']);
$id = mysql_real_escape_string($_POST['id_user']);

// vérification que la requête ne provient pas d'un serveur externe
if (preg_match('/teen-quotes.com/', $_SERVER['SERVER_NAME'])) 
{
	if (empty($id_quote))
		echo 'Erreur id !';
	else
	{
		$query = mysql_query('INSERT INTO teen_quotes_favorite (id_quote, id_user) VALUES ('.$id_quote.','.$id.')');

		if ($query) 
			echo $add_succes;
		else
			echo $error;
	}
}
else
	echo ''.$_SERVER['SERVER_NAME'].'';

Encore une fois, rien de très compliqué, je pense avoir suffisamment détaillé pour que vous puissiez comprendre facilement.

Maintenant que notre Javascript va pouvoir éxécuter notre page PHP puis mettre à jour l’affichage, il ne reste plus qu’à appeler notre fonction JavaScript dans notre page de la manière suivante :

Vous devez faire en sorte que les informations que vous souhaitez envoyer à la fonction JavaScript soient dans le bon ordre, dans notre cas 900 désigne donc id_quote et 42 id_user

Pensez à bien cibler l’élément HTML dont vous souhaitez mettre à jour le contenu, une fois la requête exécutée avec succès, l’ancien contenu texte sera effacé et mis à jour par ce que vous avez défini dans votre page appelée par votre fonction JavaScript.

Vous voilà donc prêts à utiliser l’Ajax a foison, vous avez les clés en main !