Witajcie, zacząłem pracę z c++ i natknąłem się na problem, chciałbym przesłać metodą GET identyfikator użytkownika do strony, niestety identyfikator zawiera między innymi znaki takie jak "+", który jeśli zostanie przesłany w GET zostanie zamieniony na spację w formularzu.
Kod wygląda tak:
void ts3plugin_infoData(uint64 serverConnectionHandlerID, uint64 id, enum PluginItemType type, char** data) {
char* name;
char* uid;
/* For demonstration purpose, display the name of the currently selected server, channel or client. */
switch(type) {
break;
case PLUGIN_CLIENT:
if(ts3Functions.getClientVariableAsString(serverConnectionHandlerID, (anyID)id, CLIENT_NICKNAME, &name) != ERROR_ok) {
printf("Error getting client nickname\n");
return;
}
if (ts3Functions.getClientVariableAsString(serverConnectionHandlerID, (anyID)id, CLIENT_UNIQUE_IDENTIFIER, &uid) != ERROR_ok) {
printf("Error getting client identifier\n");
return;
}
break;
default:
printf("Invalid item type: %d\n", type);
data = NULL; /* Ignore */
return;
}
*data = (char*)malloc(INFODATA_BUFSIZE * sizeof(char)); /* Must be allocated in the plugin! */
snprintf(*data, INFODATA_BUFSIZE, "Client on mysite: [URL=http://mysite.com/?uid=\%s\]\"%s\"[/URL]", uid, name);
ts3Functions.freeMemory(name);
}
Pomoże ktoś? Z góry dziękuję.