Script api REST get -> mysql (je paye)
Salut,
J'ai besoin d'un script PHP ou Python pour utiliser une api REST.
J'utilise une application qui permet la récupération des données en auto avec cette api et la fonction GET.
Il y a un support tuto sur le site de l'éditeur (Kizeo + rest).
Par contre, je ne trepagne rien, je comprends pas la logique du truc.
Donc le but est d'avoir un script où je peux renseigner des variables pour configurer le n° de formulaire, le compte et la bdd et la table mysql où je veux pousser les données, logiquement si j'ai compris les données, qu'on récupère, sont en json. Il faut faut donc aussi faire une conversion?
J'ai fait une demande de devis sur le site codeurs, et on me le fait pour 50€ le plus bas et 100€ le plus haut.
Mais si l'un de vous est capable de me faire cela je préfère, vous fournir le taff, faut pas non plus abuser niveau tarif.
Si ce type de demande est interdit, je m'escuse.
Si tu as juste besoin d'explications, je te le fais sur discord et gratis, si tu as besoin de correction sur du code, discord et gratis, par contre si te faut un nouveau script nope, c'est week-end faut pas déconner
Je dois t'avouer que j'ai un peux lu en travers , cependant il existe également des requêtes SQL pour récupérer directement des données sorties en format JSON de la BDD sous MYSQL .
Je suis dessus depuis 20h.
Le site de Kizeo est bien foutu, et le script premier ne marchait à cause mon serveur, j'ai testé sur un autre, la requête passe.
J'ai juste des merdes pour par exemple:
$formid="mavaleur";
// Initialisation de la requête
$curl = curl_init();
// Définition des entêtes et paramètres
curl_setopt_array($curl, array(
CURLOPT_URL => 'ht tps://w ww.kizeoforms.com/rest/v3/forms/' . $formId . '/data',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"Authorization: YOUR_TOKEN",
"cache-control: no-cache",
"content-type: application/json"
),
));
// Envoi de la requête et affichage de la réponse
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
Je voudrais mettre le token dans une variable car il change tous les 3 jours, mais dès que je fais comme pour le formId, mon script plante et je vois le header dans le shell, vous avez une idée?
Pour les autres: url
divise ça en 3 étapes:
1) fichier token existe pas, on initie on se log via un call POST url avec tes infos (json_encode(array("user"=> "username", "password"=>"ton password", "company"=> "company code")), renseigne toi comment faire un post avec des paramètres via curl. Si succès, tu stock le token dans un fichier par exemple avec la date de création.
2) fichier token existe mais date dépassé, tu refais l'étape 1.
3) fichier token existe,tout est ok, tu fais tes requêtes normalement, en oubliant pas d'appelé ton token à chaque requête.
Désolé de pas être un peu plus précis, mais t'as l'idée.
Merci mon script fonctionne !
Je recupère bien les données, par contre, c'est un json de ouf..
{"id":"12495590","record_number":"379","form_id":"61500","user_id":"52720","create_time":"2016-11-30 13:08:50","update_time":"2016-11-30 13:08:50","update_user_id":null,"update_answer_time":"2016-11-30 11:27:45","direction":null,"recipient_id":null,"history":"Enregistr\u00e9 par Dech GRIGNY le 2016-11-30 13:08:10","form_unique_id":"379","origin_answer":"Android 5.1.1 samsung SM-G388F","answer_time":"2016-11-30 11:27:45","user_name":"DECHGRIGNY (GRIGNY Dech)","last_name":"GRIGNY","first_name":"Dech","phone":"","email":"","login":"DECHGRIGNY","update_user_name":null,"recipient_name":null,"fields":{"date_et_heure":{"value":"2016-11-30 11:24","type":"datetime","subtype":"datetime","hidden":"false","time":{"30\/11\/2016 11:24":""}},"geolocalisation_latitude":{"parent":"geolocalisation","value":"45.6071144","type":"geoloc","subtype":"latitude","hidden":"false","time":{"45.6071144":"2016-11-30 11:24:20"}},"geolocalisation_longitude":{"parent":"geolocalisation","value":"4.7645514","type":"geoloc","subtype":"longitude","hidden":"false","time":{"4.7645514":"2016-11-30 11:24:20"}},"commune":{"value":"Grigny","type":"select","valuesAsArray":["Grigny"],"multiple":"false","hidden":"false","path":"","columns":"Grigny||||||||||||||||||||||||||||||||||||||||||||||||||","time":{"Grigny":""}},"reference2":{"value":"","type":"reference","hidden":"false","time":{"":""}},"type_d_incidents":{"value":"Autre","type":"select","valuesAsArray":["Autre"],"multiple":"true","hidden":"false","path":"","columns":"","time":{"Autre":""}},"detail":{"value":"changement de logo Grand Lyon sur le panneau d'affichage de la d\u00e9chetterie ","type":"text","subtype":"text","hidden":"false","time":{"changement de logo Grand Lyon sur le panneau d'affichage de la d\u00e9chetterie ":""}},"photo2":{"value":"c4064f61500pu52720_20161130112652","type":"photo","multiple":"true","hidden":"false","time":{"c4064f61500pu52720_20161130112652":"2016-11-30 11:26:52"}},"circonstances":{"value":"ok","type":"textarea","hidden":"false","time":{"ok":""}},"action":{"value":".","type":"textarea","hidden":"false","time":{".":""}},"photos_apres":{"value":"c4064f61500pu52720_20161130112736_000","type":"photo","multiple":"true","hidden":"false","time":{"c4064f61500pu52720_20161130112736_000":"2016-11-30 11:27:32"}},"mail":{"value":"[email protected],[email protected]","type":"select","valuesAsArray":["[email protected],[email protected]"],"multiple":"false","hidden":"false","path":"","columns":"[email protected],[email protected]||||||||||||||||||||||||||||||||||||||||||||||||||","time":{"[email protected],[email protected]":""}}}}]}
Du coup, est-ce qu'il y a moyen d'automatiser la création de table via un json comme cela? Car chaqu'un des formulaires à un dispo particulière.
En gros, je voudrais un script ou je vérifie si la table existe, si oui, j'importe le json, si non, je crée la table avec les infos.
Si vous avez des docs.
En tout cas merci Nell.
Tu ne dois accéder à ce site que si tu as au moins 18 ans ou si tu as l'âge légal pour visionner ce type de matériel dans ta juridiction locale, l’âge le plus élevé étant retenu. En outre, tu déclares et garantis que tu ne permettras aucun mineur à d'accéder à ce site ou à ces services.
En accédant à ce site, tu acceptes nos conditions d'utilisation.