// solaris (prix7) il 15.3.99 - Alfieri, Covati // METODO POST // COMPILARE CON: g++ snftScheda.cpp -o snftScheda // #include #include #include #include #include #define MAXPUNT 100 isempty(char *dato); int clean(char *s); char todigit(int ch); char *val(char *name); int token(char *, char *, char *[]); int tokenize(); char *q[MAXPUNT]; char *q_value[MAXPUNT]; char *q_name[MAXPUNT]; char *tmp[MAXPUNT]; char s[300]; main(int argc, char *argv[], char *envp[]) { int k,i; cin >> s; // input della stringa clean(s); // ripulisce la stringa, toglie i + e i % tokenize(); // tokenizzazzione della stringa ofstream out("/tmp/post"); // apertura file char destinatario[]="stat@prix7.pr.infn.it"; //INSERIRE DESTINATARIO char soggetto []=" iscrizione al convegno"; // INSERIRE IL SOGGETTO // VERIFICA CAMPI OBBLIGATORI if(!strcmp(val("name")," ")) {isempty ("NOME e COGMOME"); return 0;} if(!strcmp(val("Institution")," ")) {isempty ("ISTITUTO"); return 0;} if(!strcmp(val("citta")," ")) {isempty ("CITTA"); return 0;} if(!strcmp(val("email")," ")) {isempty ("E-MAIL"); return 0;} if(!strcmp(val("ciclo")," ")) {isempty ("Arriverò il giorno"); return 0;} if(!strcmp(val("albergo")," ")) {isempty ("Partirò il giorno"); return 0;} if(!strcmp(val("tortellata")," ")) {isempty ("PARTECIPO ALLA TORTELLATA"); return 0;} // FINE VERIFICA out<<"to: " << destinatario << endl; out<<"Subject: "<< soggetto << endl; out << endl; // INSERIRE IL TESTO DELLA MAIL out<<"NOME : "<< val("name") << endl; out<<"ENTE : "<< val("Institution") << endl; out<<"INDIRIZZO : "<< val("citta") << endl; out<<"E-MAIL:"<< val("email") << endl; out<<"ARRIVERO IL GIORNO : "<< val("ciclo") << endl; out<<"PARTIRO IL GIORNO : "<< val("albergo") << endl; out<<"PARTECIPERO ALLA TORTELLATA : " << val("tortellata") << endl; out<<"PRESENTERO UN POSTER DAL TITOLO: : "<< val("note") << endl; // FINE TESTO MAIL out.close(); system("/usr/lib/sendmail -t -f root < /tmp/post "); system("rm /tmp/post "); // INSERIRE IL MESSAGGIO A VIDEO cout<<""<"<CGI FORM"<"<"<IV CONVEGNO NAZIONALE DI FISICA STATISTICA

"<ISCRIZIONE AVVENUTA!

"< " << destinatario << endl; // FINE MESSAGIO A VIDEO } //****ISEMPTY - MESSAGGIO DA VISUALIZZARE SE MANCA UN CAMPO isempty(char *dato) { cout<<""<"<CGI FORM"<"<"<IV CONVEGNO NAZIONALE DI FISICA STATISTICA

"<ISCRIZIONE NON AVVENUTA!

"< "< e' obbligatorio "<"<