Secondo me stai solo facendo confusione non avendo chiaro come usare la codifica dell'URL.
I caratteri strani generati non saranno altro che i caratteri codificati.
Per sapere come usare correttamente l'encoding dell'URL in Javascript, chiedi nella sezione Javascript.
Chiaramente i caratteri codificati andranno poi decodificati lato PHP ( urldecode() ).
Dunque. Il problema non è la codifica nel Javascript in quanto il carattere + o con codifica lato javascript e decodifica lato PHP cmq viene interpretato come spazio. Io non riesco a fare questo, il carattere + deve essere interpretato come carattere e non come una qualche concatenazione di stringa o viene interpretato come un carattere speciale. Il problema è solo il carattere +, il resto viene interpretato correttamente.
Grazie mille.