&-Zeichen/Sonderzeichen wird nicht ersetzt

Aser

Erfahrenes Mitglied
Hi,
ich habe wahrscheinlich ein -Problem... google auch schon befragt und komm einfach net weiter...

ich habe eine Formular

Mithilfe eines Javascript soll das Zeug aus einem Feld genommen werden und mithilfe von Ajax in eine Datenbank eingetragen werden...

Das Javascript nimmt erfolgreich den Text aus dem Formularfeld. Mein Problem besteht jetzt darin, dass in diesem Text sonderzeichen vorkommen. Der Text wird als Variable in die URL gepackt... D.h. dass wenn der Text ein Sonderzeichen (=,?,&) beinhaltet, die Variablen geändert werden.

Bisher habe ich einfach das Istgleichzeichen und das Fragezeichen vor dem Abschicken mit ":istgleichzeichenersatz:" und ":fragezeichenersatz:" ausgetauscht... und vor dem Abspeichern hat der php-Code diese Begriffe wiederum durch das eigentliche Sonderzeichen (zurück-) ausgetauscht

nur will das ganze nicht mit dem &-Zeichen ... Texte werden in die Datenbank eingetragen, aber nur bis das erste Und-Zeichen vorkommt


Code:
var fragezeichen = '?', istgleichzeichen = '=', undzeichen = '&';

feldtafeltext = feldtafeltext.replace(fragezeichen, ':fragezeichenersatz:').replace(istgleichzeichen, ':istgleichzeichenersatz:').replace(undzeichen, ':undzeichenersatz:');




var myAjax = new Ajax.Request('tafeleditierenanfrage.php', {
                                         method: 'get',
                                         parameters: 'userid=".$userid."&zz=".$zz."&tafelid=' + tafelid + '&feldtafeltext=' + feldtafeltext + '&feldtimestamp=' + feldtimestamp,
                                         onComplete: tafelupdatespeichernanzeige
                                         }
                                         );

Schon mal Dank im Voraus
 
Moin,

das sieht nach prototypejs aus, das hat seine eigene Art, um Parameter zu verarbeiten, die Syntax wäre in deinem Fall für das eine Problemfeld:

Code:
parameters: { feldtafeltext: $F('feldtafeltext') }
Weitere Parameter kannst du in dem parameters-Objekt anhängen(durch ein Komma separiert)
 
Zurück