Archive for Marzo 2008
OpenSocial, primi accordi verso l’aggregazione
Leggo in questi giorni che MySpace, Yahoo! e Google hanno raggiunto un accordo per creare una fondazione che si occupi di garantire neutralità e longevità al progetto OpenSocial.
Leggo anche che Microsoft ha raggiunto gli accordi necessari per rilasciare in un futuro prossimo le Windows Live! Contacts API che permetteranno di aggiungere “Friends” di varia provenienza al network Live! Spaces.
Mi sfrego le mani e rimango in giuggiolosa attesa.
EDIT 03/04/08: Dimenticavo di citare (anche se è già noto da tempo) che alla lista contatti di Skype si possono aggiungere contatti MySpace IM, e a quella di MSN Messenger si possono aggiungere contatti Yahoo! Messenger… Forza forza forza! Muovetevi ad unire tutto! Dai dai dai!!!
Add comment 31 Marzo 2008
Forzare un download anche su IE
Molti sanno che è possibile, grazie ad un corretto uso degli headers, forzare il download di un file. Questo significa che è possibile ad esempio linkare un’immagine JPG facendo in modo che essa non si apra ma al suo posto compaia la finestra “Salva con nome…”.
Internet Explorer naturalmente complica le cose! Gli piace molto aggiungere al nome del file parentesi sia tonde che quadre, nonchè convertire caratteri vari, con comprensibile sgomento di utenti e sviluppatori. In particolare, spazi e punti nel nome del file provocano questi strani comportamenti, tanto che tempo fa partecipai sul forum su PHP di HTML.it alla realizzazione di una pillola sul tema.
Il frutto della discussione fu questa funzione:
function forceDownload($file) {
/**
* Function forceDownload:
* download any type of file if it exists and is readable
* -------------------------------------
* @author Andrea Giammarchi
* @date 18/01/2005 [17/05/2006]
* @compatibility PHP >= 4.3.0
*/
if(file_exists($file) && is_readable($file)) {
$filename = basename($file);
if(strpos(strtoupper($_SERVER['HTTP_USER_AGENT']), 'MSIE') !== false && strpos($filename, '.') !== false) {
$parsename = explode('.', $filename);
$last = count($parsename) - 1;
$filename = implode('%2E', array_slice($parsename, 0, $last));
$filename .= '.'.$parsename[$last];
}
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Length:'.filesize($file));
header('Content-Transfer-Encoding: binary');
if(@$file = fopen($file, "rb")) {
while(!feof($file))
echo fread($file, 8192);
fclose($file);
}
exit(0);
}
}
Add comment 5 Marzo 2008
