$URL="http://api.ipinfodb.com/v3/ip-city/?key=tuakey&ip=$ip&format=json";
#####per la citta ip-city##############
#echo"$URL
";
$URL = rawurldecode($URL);
$URL = stripslashes($URL);
// make sure curl is installed
if (function_exists('curl_init')) {
// initialize a new curl resource
$ch = curl_init();
// set the url to fetch
curl_setopt($ch, CURLOPT_URL, $URL);
// don't give me the headers just the content
curl_setopt($ch, CURLOPT_HEADER, 0);
// return the value instead of printing the response to browser
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// use a user agent to mimic a browser
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0');
$content = curl_exec($ch);
#echo $content;
// remember to always close the session and free all resources
curl_close($ch);
} else {
// curl library is not installed so we better use something else
}
#####################################################################
$json=$content;
$obj = json_decode($json);
$regionName=$obj->{'regionName'}; // 12345
$cityName=$obj->{'cityName'}; // 12345
echo"#$regionName#";
Una serie di codici sperimentati, e quindi funzionanti, di php e css per l'ottimizzazione dei siti web sui motori di ricerca.
Iscrizione diretta da sito alla newsletters di MailUp Api
Con curl e php è molto facile far iscrivere un cliente alla newsletters di MailUp, ecco il codice:
$url="http://[tuo_admin_url]/frontend/subscribe.aspx?idMsg=2&idList=1&email=luca@icewebsolution.it&confirm=false";
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
// curl_setopt($ch,CURLOPT_HEADER, false);
$output=curl_exec($ch);
curl_close($ch);
return $output;
?>
comodo anche nel modulo della registrazione.
$url="http://[tuo_admin_url]/frontend/subscribe.aspx?idMsg=2&idList=1&email=luca@icewebsolution.it&confirm=false";
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
// curl_setopt($ch,CURLOPT_HEADER, false);
$output=curl_exec($ch);
curl_close($ch);
return $output;
?>
comodo anche nel modulo della registrazione.
Php e curl per compilare in automatico un form
Semplice codice curl+php per compilare un form in automatico, da usare con parsimonia:
$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.example.com/path/to/form"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, true); $data = array( 'foo' => 'foo foo foo', 'bar' => 'bar bar bar', 'baz' => 'baz baz baz' ); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $output = curl_exec($ch); $info = curl_getinfo($ch); curl_close($ch);usato per postare in automatico su Pinterest
Il totale dei like, share e commenti del nostro sito su Facebook
Per chi vuole conoscere un po' di dati del nostro sito su Facebook, https://api.facebook.com/method/links.getStats?urls=%%URL%%&format=json
Controllare i dati del nostro Access token di Facebook, dopo offline_access. Debug url
Ho pensato di creare un'app per le mie numerose FanPage, ad oggi ne gestisco oltre 30, che posta in automatico quello che io gli comando. Nel pensare mi è sorto un dubbio, ma l'access_token di FB ogni quanto scade? Perchè se scade tra due settimane la mia app si blocca, come è successo con offline_access e quindi?
Una volta ricavato il nostro Access token vediamo a questo link: https://developers.facebook.com/tools/debug/accesstoken tutti i dati che ci servono, per non sbagliare.
e cosa ci dice per la scadenza del nostro token -> Never
Per ora questo, ho impostato l'app, vediamo se funziona, dovrebbe postare alle 22.01 di ogni giorno! Dovrebbe!
Ufficialmente funziona lo script lo lanciamo con Webcron e quindi postiamo 12 prodotti di Ebay su ogni FanPage.
Aggiorno a primi di luglio che con il comando grant_type=fb_exchange_token (che mi amplia la durata del token) sembra fuzionare, quindi la richiesta per il token sarà:
&scope=publish_stream,read_insights,manage_pages,Cread_stream&grant_type=fb_exchange_token
Se poi volete controllare se voi o un vostro utente ha settato bene i permessi per la nostra app, chiamiamo con fql:
$fan_count_obj = simplexml_load_file("https://api.facebook.com/method/fql.query?access_token=$token&format=xml&query=SELECT%20publish_stream%20FROM%20permissions%20WHERE%20uid%20%3D%20me()");
$permission = $fan_count_obj->permissions->publish_stream;
E con lo stesso link: https://developers.facebook.com/tools/debug/ possiamo vedere se la struttura del nostro link è esatto per Facebook.
Una volta ricavato il nostro Access token vediamo a questo link: https://developers.facebook.com/tools/debug/accesstoken tutti i dati che ci servono, per non sbagliare.
e cosa ci dice per la scadenza del nostro token -> Never
Per ora questo, ho impostato l'app, vediamo se funziona, dovrebbe postare alle 22.01 di ogni giorno! Dovrebbe!
Ufficialmente funziona lo script lo lanciamo con Webcron e quindi postiamo 12 prodotti di Ebay su ogni FanPage.
Aggiorno a primi di luglio che con il comando grant_type=fb_exchange_token (che mi amplia la durata del token) sembra fuzionare, quindi la richiesta per il token sarà:
&scope=publish_stream,read_insights,manage_pages,Cread_stream&grant_type=fb_exchange_token
Se poi volete controllare se voi o un vostro utente ha settato bene i permessi per la nostra app, chiamiamo con fql:
$fan_count_obj = simplexml_load_file("https://api.facebook.com/method/fql.query?access_token=$token&format=xml&query=SELECT%20publish_stream%20FROM%20permissions%20WHERE%20uid%20%3D%20me()");
$permission = $fan_count_obj->permissions->publish_stream;
E con lo stesso link: https://developers.facebook.com/tools/debug/ possiamo vedere se la struttura del nostro link è esatto per Facebook.
Istagram api le foto di un profilo
Per chi vuole pubblicare le foto del proprio profilo o di un proprio cliente:
https://api.instagram.com/v1/users/id_user/media/recent/?client_id=tuo_id_key che prendi qui: http://instagram.com/developer/clients/manage/#
L'id_user lo ricaviamo da qui:
https://api.instagram.com/v1/users/id_user/media/recent/?client_id=tuo_id_key che prendi qui: http://instagram.com/developer/clients/manage/#
L'id_user lo ricaviamo da qui:
https://api.instagram.com/v1/users/search?q=nomeuser&client_id=tuo_id_key
il tutto lo passiamo con curl e json
Buon divertimento con queste api
Google Place API in xml e json e lista delle categorie.
Ed ecco il codice per interrogare google place, ristoranti a Fiumicino:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=41.770364,12.221129&radius=5000&types=food&sensor=false&key=tuakey
Hotel a Fiumicino
https://maps.googleapis.com/maps/api/place/nearbysearch/xml?location=41.770364,12.221129&radius=5000&types=lodging&sensor=false&key=tuakey in questo caso i risultati sono in xml
Qui trovate l'elenco delle categorie presenti: https://developers.google.com/places/documentation/supported_types
i risultati sono ad una distanza, radius, di 5km.
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=41.770364,12.221129&radius=5000&types=food&sensor=false&key=tuakey
Hotel a Fiumicino
https://maps.googleapis.com/maps/api/place/nearbysearch/xml?location=41.770364,12.221129&radius=5000&types=lodging&sensor=false&key=tuakey in questo caso i risultati sono in xml
Qui trovate l'elenco delle categorie presenti: https://developers.google.com/places/documentation/supported_types
i risultati sono ad una distanza, radius, di 5km.
Api expedia hotel in base alla latitudine e longitudine
Ecco il codice Api di Expedia che visualizza gli hotel in base alla lotitudine e longitudine inserita:
http://api.ean.com/ean-services/rs/hotel/v3/list?minorRev=99&apiKey=xxxxxxxxx&cid=443449&locale=it_IT&numberOfResults=3&searchRadius=50&supplierCacheTolerance=MED_ENHANCED&arrivalDate=09/04/2014&departureDate=09/05/2014&room1=2&latitude=47.6062&longitude=-122.3321
Da notare che sono stati inseriti il giorno di arrivo ed uno di partenza.
http://api.ean.com/ean-services/rs/hotel/v3/list?minorRev=99&apiKey=xxxxxxxxx&cid=443449&locale=it_IT&numberOfResults=3&searchRadius=50&supplierCacheTolerance=MED_ENHANCED&arrivalDate=09/04/2014&departureDate=09/05/2014&room1=2&latitude=47.6062&longitude=-122.3321
Da notare che sono stati inseriti il giorno di arrivo ed uno di partenza.
api: short url, minuscolo e anche personalizzato
Per chi non voglia di lavorare con Goo.gl ecco un api per avere uno short url personalizzato e minuscolo.
Formato json:
http://is.gd/create.php?format=json&url=www.itineraridipesca.it/scheda_cattura.php?cattura=254&shorturl=xxxxppidpx
Formato xml:
http://is.gd/create.php?format=xml&url=www.itineraridipesca.it/scheda_cattura.php?cattura=254&shorturl=xxxxppidpx
Da leggere con una chiamata curl, tipo questa:
$ch = curl_init();
// Disable SSL verification
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// Will return the response, if false it print the response
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Set the url
curl_setopt($ch, CURLOPT_URL,$url);
// Execute
$result=curl_exec($ch);
// Will dump a beauty json :3
#var_dump($result);
$json = json_decode($result);
$errorcode=$json->errorcode;
$shorturl=$json->shorturl;
Formato json:
http://is.gd/create.php?format=json&url=www.itineraridipesca.it/scheda_cattura.php?cattura=254&shorturl=xxxxppidpx
Formato xml:
http://is.gd/create.php?format=xml&url=www.itineraridipesca.it/scheda_cattura.php?cattura=254&shorturl=xxxxppidpx
Da leggere con una chiamata curl, tipo questa:
$ch = curl_init();
// Disable SSL verification
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// Will return the response, if false it print the response
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Set the url
curl_setopt($ch, CURLOPT_URL,$url);
// Execute
$result=curl_exec($ch);
// Will dump a beauty json :3
#var_dump($result);
$json = json_decode($result);
$errorcode=$json->errorcode;
$shorturl=$json->shorturl;
Iscriviti a:
Post (Atom)