401
Ohjelmointi, palvelimet ja muu edistyneempi käyttö / Vs: curlilla arvo $_POST -taulukkoon
« : 05.02.20 - klo:12.40 »
Kiitos selvennyksestä
Pitää siis katsoa tiedoston käyttämistä, yritän paneutua asiaan
Muok.
Tarvitaan siis kaksi nettisivua, joista toinen lukee tietoja ja toinen esittää ne. Sivut käyttävät esimerkiksi samalla palvelimella olevaa tiedostoa keskinäiseen tiedonsiirtoonsa.
Kotikoneelta lähetetään sopivin väliajoin tietoa vaikka näin
http://oma_palvelin.fi/testihakemisto/testi01.php
Pitää siis katsoa tiedoston käyttämistä, yritän paneutua asiaan

Muok.
Tarvitaan siis kaksi nettisivua, joista toinen lukee tietoja ja toinen esittää ne. Sivut käyttävät esimerkiksi samalla palvelimella olevaa tiedostoa keskinäiseen tiedonsiirtoonsa.
Kotikoneelta lähetetään sopivin väliajoin tietoa vaikka näin
Koodia: [Valitse]
// https://stackoverflow.com/questions/11600130/post-data-with-libcurl
#include <curl/curl.h>
#include <iostream>
#include <string>
#include <cstring>
#include <unistd.h> //usleep esim. sleep(500);
//using namespace std;
int main(int argc, char* argv[1]){
CURL *curl;
//CURLcode res;
std::string par1 = argv[1], par2 = argv[2];
char char_array[100]; // tämä lähetetään pyynnössä, msg1 vain apuna parametrikeräilyssä
int i = 0;
std::string s = std::to_string( i );
if(argc != 3)
{
std::cout << "usage: " << argv[0] << "parameter1 parameter2" << std::endl;
return -1;
}
while(i < 10 )
{
std::string msg1 = "x=" + par1 + " " + std::to_string( i ) +
"&y=" + par2 + " " + std::to_string( i + 1);
strcpy(char_array, msg1.c_str());
i += 2;
std::cout << msg1;
curl = curl_easy_init();
if(curl)
{
curl_easy_setopt(curl, CURLOPT_URL, " http://oma_palvelin.fi/testihakemisto/testi02.php");
curl_easy_setopt(curl, CURLOPT_POST, 1);
//curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "x=1111.11&y=212122.212");
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, char_array);
//res = curl_easy_perform(curl);
curl_easy_perform(curl);
curl_easy_cleanup(curl);
//std::cout << std::endl;
} // if
sleep(3);
} // while
return 0;
}
// tehty sudo apt-get install libcurl4-gnutls-dev
// g++ testi.cpp -o testi -lcurl -std=c++17 -Wall -pedantic
/*
tulokset näkyvät sivulla
http://oma_palvelin.fi/testihakemisto/testi01.php
jossa x näyttää muuttuvan
*/
ja katsotaan tuloksia sivullahttp://oma_palvelin.fi/testihakemisto/testi01.php