+ Rispondi alla Discussione
Risultati da 1 a 5 di 5

Replace singolo apice con backslash+apice

Ultimo Messaggio di Derbai il:
  1. #1
    Utente Premium
    Data Registrazione
    Jul 2008
    Messaggi
    82

    Replace singolo apice con backslash+apice

    Ciao a tutti, ho una stringa Javascript a cui dovrei sostituire i singoli apici con backslash+apice in modo che la stringa mi venga passata correttamente ad un file php. Il problema che non riesco a sostituire questo apice singolo con nient'altro (non riesce ad identificare l'apice).

    Uso il seguente codice: replace(/'/g,"\'");

    Ne ho provati tanti altri trovati nel web ma nessuno funziona. Non sono esperto di Javascript per questo chiedo aiuto Il codice per intero :

    <script>
    function translateText(response) {
    /////ADDED FOR AJAX
    var xmlHttpReq = false;
    if (window.XMLHttpRequest) {// Xhr per Mozilla/Safari/Ie7
    xmlHttpReq = new XMLHttpRequest();
    } else if (window.ActiveXObject) { // per tutte le altre versioni di IE
    xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    strURL = "get_translation.php"+"?l=<? echo $l ?>&t=<? echo $p ?>&start=<? echo $start ?>&end=<? echo $end ?>&type=<? echo $type ?>&image=<? echo $image ?>&link=<? echo $link ?>&location=<? echo $location ?>&tt="+response.data.translations[0].translatedText.replace(/'/gi,"\'");
    xmlHttpReq.open('GET', strURL, true);
    xmlHttpReq.setRequestHeader("Content-Type", "text/html");
    xmlHttpReq.onreadystatechange = function() {
    if (xmlHttpReq.readyState == 4) {
    responseText = xmlHttpReq.responseText;
    //updateStyle(responseText,OScatId);
    document.getElementById("<? echo $p.$l ?>").innerHTML += "<br>" + responseText;
    }
    }
    xmlHttpReq.send('');
    }
    //////END AJAX
    </script>

    Il testo che viene passato e troncato al primo apice :

    Toutes les chambres ont t rnoves et quipes de tout le confort moderne pour rendre votre sjour mieux. La gestion familiale sera stupirper la courtoisie et l'efficacit. Maintenant disponible un service de navette de l'aroport et la gare de Florence sur demande.

  2. #2
    User Attivo L'avatar di ayrton2001
    Data Registrazione
    Jul 2006
    Localit
    Bagheria
    Messaggi
    1,174
    Segui ayrton2001 su Twitter Aggiungi ayrton2001 su Google+ Aggiungi ayrton2001 su Facebook Aggiungi ayrton2001 su Linkedin Visita il canale Youtube di ayrton2001
    Ciao Derbai,
    prova con questo:
    Codice:
    replace(/\'/g,'\\\'');
    Leggimi su Andrea Cardinale | Seguimi su Twitter e Google+

  3. #3
    Utente Premium
    Data Registrazione
    Jul 2008
    Messaggi
    82
    No, non funziona ma il problema sembra essere l'apice che non viene riconosciuto. Come se le API di Google translate rispondessero con uncarattere differente anche se uguale visivamente all'apice.
    Ho optato per una azione pi complessa: convertire la stringa in ASCII e poi riconvertirla da PHP.

    Grazie comunque. Ciao.

  4. #4
    User Attivo L'avatar di ayrton2001
    Data Registrazione
    Jul 2006
    Localit
    Bagheria
    Messaggi
    1,174
    Segui ayrton2001 su Twitter Aggiungi ayrton2001 su Google+ Aggiungi ayrton2001 su Facebook Aggiungi ayrton2001 su Linkedin Visita il canale Youtube di ayrton2001
    Citazione Originariamente Scritto da Derbai Visualizza Messaggio
    No, non funziona ma il problema sembra essere l'apice che non viene riconosciuto. Come se le API di Google translate rispondessero con uncarattere differente anche se uguale visivamente all'apice.
    Ho optato per una azione pi complessa: convertire la stringa in ASCII e poi riconvertirla da PHP.
    Hai provato ad elaborare la stringa con la funzione urldecode() ?
    Leggimi su Andrea Cardinale | Seguimi su Twitter e Google+

  5. #5
    Utente Premium
    Data Registrazione
    Jul 2008
    Messaggi
    82
    No, ormai ho risolto come scritto codificando la stringa in caratteri ASCII e poi decodificandola in php.
    Il codice ASCII del carattere #39.

    Comunque grazie per il suggerimento, la prossima volta user ulrdecode.

    Ciao Daniele

+ Rispondi alla Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] Attivato
  • Il codice [VIDEO] Attivato
  • Il codice HTML Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.