Back to top

Autore Topic: Quasi Risolto - Modulo html con API  (Letto 7718 volte)

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Quasi Risolto - Modulo html con API
« il: 21 Mag 2016, 10:28:40 »
Salve a tutti,
premetto che penso che il problema non sia di joomla bensì del codice che non riesco a sistemare.

All'interno del sito, attraverso un modulo html, stocercando di posizionare un codice che permette di incorporare ad esempio, una petizione dal seguente indirizzo https://www.change.org/p/dunkin-donuts-stop-using-styrofoam-cups-and-switch-to-a-more-eco-friendly-solution

cosi dal seguente tutorial https://www.change.org/developers/tutorials/a-basic-request ho seguito  la procedura ed ho inserito il codice nel mio modulo html personalizzato.

<?php
$API_KEY = 'example';
$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';
$PETITION_URL = 'http://www.change.org/petitions/dunkin-donuts-stop-using-styrofoam-cups-and-switch-to-a-more-eco-friendly-solution';
$parameters = array(
  'api_key' => $API_KEY,
  'petition_url' => $PETITION_URL
);
$query_string = http_build_query($parameters);
$final_request_url = "$REQUEST_URL?$query_string";
$response = file_get_contents($final_request_url);
$json_response = json_decode($response, true);
$petition_id = $json_response['petition_id'];
echo $petition_id;
?>

Ma purtoppo non riesco a visualizzarlo nel mio sito.
Qualcuno potrebbe essere gentile, considerato che changeorg, nonostante sia una delle piu grandi piattaforme per le petizioni on line, non riescono ad aiutarmi???
Grazie infinite
« Ultima modifica: 02 Giu 2016, 16:29:42 da anto16 »

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21748
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:Modulo html con API
« Risposta #1 il: 21 Mag 2016, 10:32:47 »
il link del tuo sito con il modulo attivo ed il codice inserito, che analiziamo la pagina
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #2 il: 21 Mag 2016, 11:54:34 »
Nei moduli non puoi eseguire codice php, ti conviene usare un apposita estensione tipo sourcerer o ppure abilitare il php da settaggio editor (sconsigliato)

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #3 il: 22 Mag 2016, 09:47:09 »
salce, ancora grazie in anticipo
ho installato sourcerer ed all'interno del modulo personalizzato html su inserirsci codice si apre la finestra cosi:

{source}
<!-- You can place html anywhere within the source tags -->


<script language="javascript" type="text/javascript">
    // You can place JavaScript like this
   
</script>
<?php
    // You can place PHP like this
   
?>
{/source}

ho provato ad inserire il codice di esempio su con api key ma ancora nulla:

<?php
$API_KEY = 5003520e8a003612049a811c7279259d3128fbe afa6d90ae267bf7786e92ef82;
$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';
$PETITION_URL = 'https://www.change.org/p/io-proviamo';
$parameters = array(
  'api_key' => $API_KEY,
  'petition_url' => $PETITION_URL
);
$query_string = http_build_query($parameters);
$final_request_url = "$REQUEST_URL?$query_string";
$response = file_get_contents($final_request_url);
$json_response = json_decode($response, true);
$petition_id = $json_response['petition_id'];
echo $petition_id;
?>

forse sono sbagliati i parametri?
grazie ancora
« Ultima modifica: 22 Mag 2016, 09:49:11 da anto16 »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #4 il: 22 Mag 2016, 11:26:37 »
Il codice va inserito nei tag source

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #5 il: 22 Mag 2016, 11:30:46 »
grazie
sto provando cosi ma esce errore :'(

{source}
<?php
$API_KEY = 5003520e8a003612049a811c7279259d3128fbe afa6d90ae267bf7786e92ef82;
$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';
$PETITION_URL = 'https://www.change.org/p/io-proviamo';
$parameters = array(
'api_key' => $API_KEY,
'petition_url' => $PETITION_URL
);
$query_string = http_build_query($parameters);
$final_request_url = "$REQUEST_URL?$query_string";
$response = file_get_contents($final_request_url);
$json_response = json_decode($response, true);
$petition_id = $json_response['petition_id'];
echo $petition_id;
?>
{/source}

Grazie ancora

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #6 il: 22 Mag 2016, 14:53:24 »
Che tipo di errore.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #7 il: 22 Mag 2016, 15:42:27 »
Parse error:  syntax error, unexpected 'a003612049a811c7279259d3128fbe' (T_STRING) in /membri/codicec/plugins/system/sourcerer/helper.php(628) : runtime-created function on line 7
 
 Fatal error:  Function name must be a string in /membri/codicec/plugins/system/sourcerer/helper.php on line 633

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #8 il: 22 Mag 2016, 15:52:41 »
Verifica la compatibilità della versione php che usi con le richieste dello script.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #9 il: 22 Mag 2016, 15:56:38 »
risulta che sto utilizzando php 5.4
per caso c'etnrano le connessioni server to server?

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #10 il: 22 Mag 2016, 18:04:31 »
L'errore riguarda l'apikey, verifica che sia scritta senza interruzioni o interrotta da accapo.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #11 il: 22 Mag 2016, 21:59:13 »
grazie ancora

ho inserito gli apici all'inizio e alla fine della apikey

$API_KEY = '5003520e8a003612049a811c7279259d3128fbe
afa6d90ae267bf7786e92ef82';
gli errori adesso non escono, però si vede solo il titolo del modulo

il tutorial è questo https://www.change.org/developers/tutorials/a-basic-request
forse sbaglio nei parametri
« Ultima modifica: 22 Mag 2016, 22:00:56 da anto16 »

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #12 il: 24 Mag 2016, 15:37:46 »
ho notato che il post ha ricevuto molto visite... sono contento almeno di aver creato un post interessante :-)
Grazie a voi tutti per la desiderata solution

Offline $Red

  • Moderator
  • Instancabile
  • *****
  • Post: 5351
  • "Bastard Inside"
    • Mostra profilo
Re:Modulo html con API
« Risposta #13 il: 24 Mag 2016, 15:41:48 »
Ciao, ho letto sopra che facevi riferimento alle connessioni servertoserver se sei su altervista ed hai risolto i problemi con il codice prova ad attivarle, per visualizzare contenuto proveniente dall'esterno di altervista potrebbe essere necessario

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #14 il: 24 Mag 2016, 15:50:52 »
sono su altervista, si grazie
ho mandato sms per identificazione.
Entro 30 minuti dovrebbe avvenira lo sblocco
allego schermata m all'interno non vedo changeorg, spero non sia un problema
Aspettiamo
Grazie ancora

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #15 il: 24 Mag 2016, 17:19:46 »
Trascorso piu di 30 minuti , ma il modulo continua a non vedersi.
La cosa strana che ho provato a contattare changeorg e non sanno rispondere :-)))
Grazie ancora a Voi tutti

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #16 il: 24 Mag 2016, 18:51:12 »
Secondo me hai un api key errata, ho provato ad eseguire esternamente il file con la tua chiave e non mi visualizza nulla, lo stesso e metto nessuna chiave.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #17 il: 25 Mag 2016, 16:54:34 »
garzie ancora,
allora cerco di fare meglio lo scenario:

da sito www.change.org ho creato una petizione di prova https://www.change.org/p/io-proviamo

poi dal tutorial per incorporare la petizione nel proprio sito ho richiesto le apikey e mi rilascia anche la secret api (che non saprei dove metterla) e mi esce 
{"success":true,"api_key":"5003520e8a003612049a811c7279259d3128fbe afa6d90ae267bf7786e92ef82","

api_secret":"9262c2a2dd85f177e5b30e5e4628da0b2ca38a9 0d92e84f3e4320aabe6f0a90d"}

infine nel modulo html personalizzato dovrei inserire il codice preleato da

https://www.change.org/developers/tutorials/a-basic-request

ho provato ad adattare ma non funziona.

Spero di essere stato il piu trasparente possibile

razie ancora per le soluzioni

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #18 il: 25 Mag 2016, 18:10:11 »
Hai uno spazio in più all'interno dell'api key nel tuo codice e come ti ho scritto prima non devi inserirla in due righe, scrivila senza andare accapo.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #19 il: 25 Mag 2016, 21:56:32 »
cosi il codice inserito nel modulo html, ma ancora nulla:

{source}
<?php
$API_KEY="success":true,"api_key":"5003520e8a003612049a811c7279259d3128fbe afa6d90ae267bf7786e92ef82","api_secret":"9262c2a2dd85f177e5b30e5e4628da0b2ca38a9 0d92e84f3e4320aabe6f0a90d";
$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';
$PETITION_URL = 'https://www.change.org/p/io-proviamo';
$parameters = array(
'api_key' => $API_KEY,
'petition_url' => $PETITION_URL
);
$query_string = http_build_query($parameters);
$final_request_url = "$REQUEST_URL?$query_string";
$response = file_get_contents($final_request_url);
$json_response = json_decode($response, true);
$petition_id = $json_response['petition_id'];
echo $petition_id;
?>
{/source}

Grazie ancora

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #20 il: 25 Mag 2016, 22:04:56 »
cercando meglio sul portale change.org è possibile incorporare il codice

<script src="https://d18kwxxua7ik1y.cloudfront.net/product/embeds/v1/change-embeds.js" type="text/javascript"></script>
<div class="change-embed-petition" data-petition-id="7116479"></div>

cosi appare nel menu ma mi porta solo al link, invece dovrebbe apparire come nell'allegato sulla destra.

Grazie ancora

« Ultima modifica: 25 Mag 2016, 22:17:24 da anto16 »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #21 il: 25 Mag 2016, 22:25:33 »
Ma devi mettere solo il numero racchiuso nei doppi apici come apikey, è così difficile?

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #22 il: 25 Mag 2016, 22:32:14 »
{source}
<?php
$API_KEY = '5003520e8a003612049a811c7279259d3128fbe
afa6d90ae267bf7786e92ef82';
$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';
$PETITION_URL = 'http://www.change.org/petitions/dunkin-donuts-stop-using-styrofoam-cups-and-switch-to-a-more-eco-friendly-solution';
$parameters = array(
'api_key' => $API_KEY,
'petition_url' => $PETITION_URL
);
$query_string = http_build_query($parameters);
$final_request_url = "$REQUEST_URL?$query_string";
$response = file_get_contents($final_request_url);
$json_response = json_decode($response, true);
$petition_id = $json_response['petition_id'];
echo $petition_id;

?>
{/source}

Qusto è il codice che inserisco ma viene visualizzato solo il modulo :-(((

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #23 il: 25 Mag 2016, 22:53:39 »
La petizione non esiste perciò non la vedi, prova a cliccare il link.

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #24 il: 26 Mag 2016, 07:47:25 »
da come scritto nel tutorial in questi due parametri non riesco a capire cosa inserire, ho provato diversi casi ma ancora nulla

$REQUEST_URL = 'https://api.change.org/v1/petitions/get_id';

$PETITION_URL = 'http://www.change.org/petitions/dunkin-donuts-stop-using-styrofoam-cups-and-switch-to-a-more-eco-friendly-solution';

$REQUEST_URL = ???? Cosa metto??? come trovo l'id della petizione???

$PETITION_URL = https://www.change.org/p/io-proviamo

Grazie ancora

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #25 il: 26 Mag 2016, 11:54:22 »
Forse ho capito, lo script serve per ottenere solo il petition id, infatti mettendo come url la tua petizione e come key il tuo key ottengo l'id 7116479
dettato dalla istruzione finale

echo $petition_id;

In pratica credo che hai preso lo script sbagliato, per la firma devi usare questo

https://github.com/change/api_docs/blob/master/v1/examples/sign_petition.php

i ci metti sempre il tuo id e il tuo petition url


Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #26 il: 26 Mag 2016, 12:02:51 »
Grazie ci provo

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #27 il: 26 Mag 2016, 12:20:18 »
grazie ancora forse ci siamo.
Come sei riuscito a trovare l'ID???

Ho inserito nel modulo il seguente codice:

{source}
<?php
// Set my API key and secret token.
$api_key = '
5003520e8a003612049a811c7279259d3128fbeafa6d90ae267bf7786e92ef82';
$secret = '
9262c2a2dd85f177e5b30e5e4628da0b2ca38a90d92e84f3e4320aabe6f0a90d';
// Set my authorization key for petition with Change.org ID 12345.
$petition_auth_key
= 'my_petition_auth_key';
$petition_id = 7116479;
// Set up the endpoint and URL.
$base_url = "https://api.change.org";
$endpoint = "/v1/petitions/$petition_id/signatures";
$url = $base_url . $endpoint;
// Set up the signature parameters.
$parameters = array();
$parameters['api_key'] = $api_key;
$parameters['timestamp'] = gmdate("Y-m-d\TH:i:s\Z"); // ISO-8601-formtted timestamp at UTC
$parameters['endpoint'] = $endpoint;
$parameters['source'] = 'test.com';
$parameters['email'] = 'person@example.com';
$parameters['first_name'] = 'John';
$parameters['last_name'] = 'Doe';
$parameters['address'] = '1 Market St';
$parameters['city'] = 'Philadelphia';
$parameters['state_province'] = 'PA';
$parameters['postal_code'] = '19144';
$parameters['country_code'] = 'US';
// Build request signature.
$query_string_with_secret_and_auth_key = http_build_query($parameters) . $secret . $petition_auth_key;

// Add the request signature to the parameters array.
$parameters['rsig'] = hash('sha256', $query_string_with_secret_and_auth_key);
// Create the request body.
$data = http_build_query($parameters);
// POST the parameters to the petition's signatures endpoint.
$curl_session = curl_init();
curl_setopt_array($curl_session, array(
CURLOPT_POST => 1,
CURLOPT_URL => $url,
CURLOPT_POSTFIELDS => $data
));
$result = curl_exec($curl_session);
// Output the returned JSON result.
echo $result;
?>
{/source}


qui non saprei cosa inserire
$petition_auth_key = 'my_petition_auth_key';

Ovviamente ancora nulla, anzi il seguente errore nel modulo:
{"result":"failure","messages":["authorization key cannot be found or is not granted"]}1

Grazie ancora

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #28 il: 26 Mag 2016, 14:16:04 »
Forse invece che andare a tentoni è meglio se ti fai una buona lettura di tutte le sezioni, io adesso non ho tempo e domani potrei non avere voglia.  :)

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #29 il: 26 Mag 2016, 15:41:46 »
grazie ancora,
posso garantire che l'impegno per cercare di capire, tra l'inglese e il codice php, lo metto tutto :) . ma non è semplice...
Non voglio rubare tempo a nessuno, ci mancherebbe... scusami se attraverso i miei post ho fatto capire questo
Grazie ancora

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Modulo html con API
« Risposta #30 il: 26 Mag 2016, 20:08:58 »
No tranquillo, la mia era solo per darti maggiore carica. Poi il tempo che spendo qui ti posso assicurare che non è mai perso.  :)

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Modulo html con API
« Risposta #31 il: 27 Mag 2016, 16:54:31 »
grazie ancora,
sto studiando, ma purtoppo non riesco a ricevere la my_petition_auth_key ... ho provato a contattare changeorg anche il forum ma niente... chissà perchè...
grazie ancora

Offline anto16

  • Appassionato
  • ***
  • Post: 495
    • Mostra profilo
Re:Quasi Risolto - Modulo html con API
« Risposta #32 il: 02 Giu 2016, 16:31:07 »
Salve a tutti,
ho inserito quasi risolto nel titolo, nel senso che change org non rilascia piu le chiavi di autorizzazioni ma è possibile solo embeddare riportanto al loro sito.
Grazie ancora per la disponibilità mostrata

 



Web Design Bolzano Kreatif