Go Down

Topic: Transferencia de archivo entre arduino y servidor usando ethernet shield (Read 2130 times) previous topic - next topic

rodezn

Saludos a todos.

Quiero usar la ethernet shield de arduino + SD card para transmitir archivos ".txt" a un servidor, para ser almacenado ahi. USare el Ubuntu server. Al ser generado el archivo en el arduino corra una rutina para mandar los arvhivos al hdd del servidor y que ahi esten disponibles para su uso en una pagina web.

Pero no se si es posible transferir  archivos con la ethernet? y de ser posible me podrían brindar la ayuda para guiarme en el camino. Con algún código o link para aprender mas al respecto??

eried

Lo mas simple es que hagas un sencillo código php que reciba parámetros:
www.tuserver.com/script.php?datos=hola mundo&archivo=a.txt&checksum=22

y en php usas file_put_contents, $_GET['datos'], $_GET['archivo'], etc. Procurando que el nombre de archivo no contenga / ' " y otros caracteres para evitar problemas futuros. El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)

Entonces tu arduino solo "abre" esa página.
My website: http://ried.cl

flico

Quote

... El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)


No entiendo esta parte, ¿es para que no te indexen los buscadores?
Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

eried


Quote

... El checksum que añadí es simplemente algún numero, por ejemplo largo de los datos +1*2 (para evitar que robots de buscadores dejen basura a futuro)


No entiendo esta parte, ¿es para que no te indexen los buscadores?


Es un simple checksum. En mi sitio tenía un sistema de votaciones hace muchos años del tipo votar.php?voto=4 y me di cuenta que a veces los robots de buscadores (de alguna forma u otra) a veces le aciertan a algo válido, un checksum es como el último dígito de tu identificación de ciudadano. Es opcional.
My website: http://ried.cl

rodezn

Gracias eried por la ayuda.

Entiendo lo que me dices, peros tienes alguna idea de como acceder al directorio donde el arduino a guardado los archivos ".txt" ??
Tienes algun codigo de ejemplo?

eried

¿Te refieres a la parte de php?

La forma más sencilla es un archivo recibir.php:
Code: [Select]
<?php file_put_contents($_GET['archivo'], $_GET['datos']) ?>

Y con el shield eternet abres:
Code: [Select]
tuservidor/recibir.php?archivo=hola.txt&datos=hola mundo

Esto necesita trabajo por si miras alguien malicioso podría dañar otros archivos con archivo=../mispasswords.txt por ejemplo, pero el  archivo creado sería hola.txt
My website: http://ried.cl

rodezn

Pero, dentro del código en C que debo cargar en el arduino, como  especifico la locación del archivo?

eried


Pero, dentro del código en C que debo cargar en el arduino, como  especifico la locación del archivo?


tuservidor/recibir.php?archivo=hola.txt&datos=hola mundo <- hola.txt ?
My website: http://ried.cl

rodezn

A muchas gracias. Lo probare y te cuento los resultados eh.

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy