- C e WEB
+ Responder ao Tópico
-
C e WEB
oia eu aki travez....
ola eu uso a seguinte funcao pra pegar variaveis enviadas pelo metodo POST de paginas da web:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char *post(char *str){
int pos,a,b,cl;
char *std,*tmp;
tmp=malloc(3);
tmp=getenv("CONTENT_LENGTH"-);
if(tmp){
cl=atoi(tmp);
}else{
cl=1024*8;
}
std=malloc(cl+1);
fread(std,sizeof(char),cl,stdin);
printf("%s\n",str);
std=strstr(std,str);
if(!std){
return(std);
}
printf("%s\n",std);
for(pos=0;pos<strlen(std);pos++){
if(std[pos]==´&´{
std[pos]=´\0´;
break;
}
}
for(pos=0;pos<strlen(std);pos++){
if(std[pos]==´=´{
pos++;
for(a=pos,b=0;a<strlen(std);a++,b++){
std[b]=std[a];
}
std[b]=´\0´;
printf("%s\n",std);
}
}
printf("%s\n",std);
return(std);
}
ateh ai td bem....ele fonuncia bunitinho....porem pra soh uma variavel....por exemplo...se eu enviar o nome e a senha o std inicialmente vai ficar assim: "nome=blablabla&senha=nada" ai se eu manda ele pegar senha ele vai me retornar "nada", mas se na segunda vez eu mandar ele pegar nome a variavel std desde o principio vai ser igual a NULL ou seja nao vai existir....
sei que devo ta errando em coisa basica...pq pelo q eu entendi eh q essa funcao q eu fiz ta alterando o conteudo de uma constante.....sendo que isso eh praticamente proibido por leis divinas......se alguem puder-me ajudar.....eu agradeceria MUITO......
c++
SDM - A vida é o primeiro sintoma da morte!!!
Garimpeiro.NET - Seu ouro na internet
[ Esta mensagem foi editada por: SDM em 24-11-2003 16:06 ]
[ Esta mensagem foi editada por: SDM em 24-11-2003 16:06 ]
-
C e WEB
Voltei pra dizer que ja resolvi o problema baixei uma biblioteca chamada libCGI escrita por um brasileiro xara meu....a biblioteca eh muito boa, tem tambem suporte a sessoes e cookies....ela eh muito boa mesmo...
pra quem estiver interessado:
http://libcgi.sourceforge.net/
<IMG SRC="images/forum/icons/icon_wink.gif"> <IMG SRC="images/forum/icons/icon_wink.gif"> <IMG SRC="images/forum/icons/icon_wink.gif">