Maison >interface Web >js tutoriel >Que dois-je faire si javascript transmet des caractères chinois tronqués à PHP ?

Que dois-je faire si javascript transmet des caractères chinois tronqués à PHP ?

coldplay.xixi
coldplay.xixioriginal
2020-08-12 10:05:381665parcourir

Solution pour la façon dont JavaScript transmet les caractères chinois tronqués à PHP : tout d'abord, utilisez la fonction [encodeURIComponent()] dans le code JavaScript pour traiter les chaînes chinoises, puis assurez-vous que l'encodage des valeurs entre JavaScript et les programmes back-end tels ; car Asp et Php sont unifiés.

Que dois-je faire si javascript transmet des caractères chinois tronqués à PHP ?

Solution permettant à JavaScript de transmettre des caractères chinois tronqués à PHP :

Utilisez la fonction encodeURIComponent() dans le code javascript pour manipulez-le Chaîne chinoise,

Code JS :

<script type=”text/javascript”>
string = encodeURIComponent(string);
location.href = index.php?keyword=’+string;
</script>

Recommandations d'apprentissage associées : Tutoriel vidéo javascript

Code PHP :

<?php
$keyword = (isset($_GET[&#39;keyword&#39;])) ? $_GET[&#39;keyword&#39;] : &#39;&#39;;
?>

Recommandations d'apprentissage associées : programmation php(vidéo)

Assurer un encodage unifié des transferts de valeur entre JavaScript et les programmes back-end tels que comme Asp et Php

Sur les pages avec des jeux de caractères non anglais, si vous utilisez Ajax pour l'interaction des données, vous devez veiller à ce que les données front-end et back-end soient codées uniformément, sinon elles seraient tronquées les personnages apparaîtront facilement !

Lorsque le backend est un programme ASP, la fonction suivante peut être utilisée pour maintenir l'encodage unifié des valeurs transférées entre Javascript front-end et Asp :

Encodage : escape(string)

Décodage : (chaîne)

Ces deux fonctions existent en JavaScript et Asp, et leurs fonctions sont exactement les mêmes Tant que l'une des extrémités transmet des données à l'autre extrémité, l'échappement est utilisé pour. encodez-le en premier, et le destinataire utilise le décodage pour garantir qu'il n'y aura pas de caractères tronqués lors de la transmission des données Javascript et Asp !

Lorsque le backend est un programme PHP, le maintien de l'encodage unifié des valeurs​​transmises entre le front-end Javascript et PHP peut être traité à l'aide de la fonction suivante :

WEB front-end JavaScript

Encodage : encodeURI(string)

Décodage : decodeURI(string)

Backend WEB Php

Encodage : urlencode(string)

Décodage : urldecode( string)

De même, utilisez la fonction d'encodage correspondante encodeURI ou urlencode lors du transfert de valeurs, et utilisez la fonction de décodage correspondante decodeURI ou urldecode lors de la réception, pour garantir qu'aucun caractère tronqué n'apparaîtra pendant le processus de transfert de données de Javascript et Php !

Lors du décodage de données codées en urlen dans Javascript et Php front-end WEB, vous devrez peut-être utiliser deux décodages, tels que : (decodeURI(string)), pour décoder du texte sans caractères, tel que des signes de ponctuation, etc. attendez.

Recommandations d'apprentissage associées : Vidéo de programmation

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn