Maison développement back-end tutoriel php Exemple d'analyse des méthodes de lecture, d'écriture et de fonctionnement interactif de php+JavaScript pour les cookies

Exemple d'analyse des méthodes de lecture, d'écriture et de fonctionnement interactif de php+JavaScript pour les cookies

Aug 08, 2017 am 09:49 AM
cookie php

Cet article présente principalement les méthodes de lecture, d'écriture et de fonctionnement interactif de PHP et JavaScript pour les cookies. Il combine des exemples pour analyser comment php et javascript définissent les cookies, php lit les cookies définis par php et js, et js lit les paramètres php et js. . Pour les cookies et autres compétences de fonctionnement connexes, les amis dans le besoin peuvent se référer à

Cet article décrit les méthodes de lecture, d'écriture et de fonctionnement interactif de PHP et JavaScript pour les cookies. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Les exemples suivants répertorient plusieurs scénarios d'interaction et répertorient les méthodes d'interaction entre JS et PHP. En résumé, nous éviterons d’être dérangés par des problèmes de cookies à l’avenir.


1

2

3

4

<?php

 setcookie('php_cn_ck','php_中文_cookie');

 setcookie('php_en_ck','php_english_cookie');

?>

Copier après la connexion


1

2

3

4

5

<script src="cookie.js"></script>

<script>

 Cookies.set('js_cn_ck','js_中文_cookie',5000);

 Cookies.set('js_en_ck','js_english_cookie');

</script>

Copier après la connexion

Le cookie PHP a été défini :
php_cn_ck=php_中文_ cookie
php_en_ck=php_english_cookie

Le cookie JS a été défini :
js_cn_ck=js_中文_cookie
js_en_ck=js_english_cookie

Lire le cookie

Lire les cookies chinois et anglais envoyés par php

1 php read php set php cookie


1

2

3

4

5

6

7

8

9

<?php

 include('function.php');

 $php_cn_ck=$_COOKIE['php_cn_ck'];

 $un_php_cn_ck=unescape($php_cn_ck);

 echo "解码前的中文cookie:php_cn_ck=$php_cn_ck<br><br>";

 echo "解码后的中文cookie:un_php_cn_ck=$un_php_cn_ck<br><br>";

 $php_en_ck=$_COOKIE['php_en_ck'];

 echo "英文cookie无需解码:php_en_ck=$php_en_ck<br><br>";

?>

Copier après la connexion

2 js lit le cookie des paramètres php


1

2

3

4

5

6

7

8

9

<script src="cookie.js"></script>

<script>

 php_cn_ck=Cookies.get('php_cn_ck');

 un_php_cn_ck = decodeURIComponent (escape(php_cn_ck));

 document.write("解码前的中文cookie :php_cn_ck="+php_cn_ck+"<Br><br>");

 document.write("解码后的中文cookie :un_php_cn_ck="+un_php_cn_ck+"<Br><br>");

 php_en_ck=Cookies.get('php_en_ck');

 document.write("英文cookie无需解码 :php_en_ck="+php_en_ck+"<Br><br>");

</script>

Copier après la connexion

Deuxième lecture des cookies chinois et anglais envoyés par JS

1 php lecture JS paramètre js cookie


1

2

3

4

5

6

7

8

<?php

 $js_cn_ck=$_COOKIE['js_cn_ck'];

 $un_js_cn_ck=unescape($js_cn_ck);

 echo "解码前的中文cookie:js_cn_ck=$js_cn_ck<br><br>";

 echo "解码后的中文cookie:un_js_cn_ck=$un_js_cn_ck<br><br>";

 $js_en_ck=$_COOKIE['js_en_ck'];

 echo "英文cookie无需解码:js_en_ck=$js_en_ck<br><br>";

?>

Copier après la connexion

2 js lit le cookie défini par js


1

2

3

4

5

6

7

8

<script>

 js_cn_ck=Cookies.get('js_cn_ck');

 document.write("解码前的中文cookie :js_cn_ck="+js_cn_ck+"<Br><br>");

 //un_js_cn_ck = decodeURIComponent (escape(js_cn_ck)); 调用这两句会出现js解析中断

 //document.write("解码后的中文cookie :un_js_cn_ck="+un_js_cn_ck+"<Br><br>");

 js_en_ck=Cookies.get('js_en_ck');

 document.write("英文cookie无需解码 :js_en_ck="+js_en_ck+"<Br><br>");

</script>

Copier après la connexion

Résumé :

1. PHP utilise sa propre fonction pour lire les cookies PHP sans aucun obstacle et sans décodage.
2. js utilise la méthode cookie.js pour lire les cookies js sans aucun obstacle et sans décodage.
3. JS doit effectuer le traitement de la fonction "decodeURIComponent (escape(php_cn_ck))" pour lire le cookie chinois de php
4 php doit effectuer " unescape()" traitement des fonctions

cookie.js :


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

var Cookies = {};

/**

* 设置Cookies

*/

Cookies.set = function(name, value){

 var argv = arguments;

 var argc = arguments.length;

 var expires = (argc > 2) ? argv[2] : null;

 if(expires != null){

  var exp   = new Date();

  exp.setTime(exp.getTime() + 8*3600 + expires);

 }

 alert(exp.toGMTString());

 var path = (argc > 3) ? argv[3] : '/';

 var domain = (argc > 4) ? argv[4] : null;

  var secure = (argc > 5) ? argv[5] : false;

 document.cookie = name + "=" + escape (value) +

 ((expires == null) ? "" : ("; expires=" + exp.toGMTString())) +

 ((path == null) ? "" : ("; path=" + path)) +

 ((domain == null) ? "" : ("; domain=" + domain)) +

 ((secure == true) ? "; secure" : "");

};

/**

* 读取Cookies

*/

Cookies.get = function(name){

 var arg = name + "=";

 var alen = arg.length;

 var clen = document.cookie.length;

 var i = 0;

 var j = 0;

 while(i < clen){

  j = i + alen;

  if (document.cookie.substring(i, j) == arg)

  return Cookies.getCookieVal(j);

  i = document.cookie.indexOf(" ", i) + 1;

  if(i == 0)

  break;

 }

 return null;

};

/**

* 清除Cookies

*/

Cookies.clear = function(name) {

 if(Cookies.get(name)){

 var expdate = new Date();

 expdate.setTime(expdate.getTime() - (86400 * 1000 * 1));

 Cookies.set(name, "", expdate);

 }

};

Cookies.getCookieVal = function(offset){

 var endstr = document.cookie.indexOf(";", offset);

 if(endstr == -1){

  endstr = document.cookie.length;

 }

 return unescape(document.cookie.substring(offset, endstr));

};

Copier après la connexion

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 de ce site Web
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

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Date et heure de CakePHP

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Téléchargement de fichiers CakePHP

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Routage CakePHP

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

Discuter de CakePHP

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Configuration du projet CakePHP

Guide rapide CakePHP Guide rapide CakePHP Sep 10, 2024 pm 05:27 PM

Guide rapide CakePHP

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Comment configurer Visual Studio Code (VS Code) pour le développement PHP

See all articles