我正在尝试通过AJAX请求保留会话.仅仅调用session_start()不会接听现有的会话,而是创建一个新的会话ID.我的解决方案是通过AJAX调用将会话ID传递给PHP,但这导致以下错误:

Warning: session_start() [function.session-start]: The session id is too long or contains illegal characters, valid characters are a-z, A-Z, 0-9 and ‘-,’ in …

我相信这是因为当前会话ID包含下划线字符,但是该会话ID是通过对session_id()的调用来获取的,那么它如何包含错误字符?

我的意思的简单例子:

页面上的JavaScript(使用jQuery)

var sessID = "<?php echo session_id(); ?>"; //sessID contains underscore characters

$.get('/path/to/script.php',{sid:sessID}, function(data) {

//do something

});

script.php

session_id($_GET['sid']);

session_start();

echo $_SESSION['some_key'];

?>

因此,我目前正在考虑解析第一页上的会话ID,并在尝试使用它之前替换其中的所有错误字符,但是我不确定这是正确的选择还是需要在其他地方查看寻找解决方案.

解决方法:

$.get('/path/to/script.php',{sid:<?php echo session_id(); ?>}, function(data) {

//do something

});

应该

$.get('/path/to/script.php',{sid:"<?php echo session_id(); ?>"}, function(data) {

//do something

});

标签:ajax,drupal,session,php

来源: https://codeday.me/bug/20191101/1985506.html

php 字符串含有下划线,PHP-我的会话ID中有下划线相关推荐

  1. linux目录下所有文件内容替换,linux替换目录下所有文件中的某字符串

    比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做: sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl ...

  2. java 下划线转驼峰命名_Java驼峰命名 下划线命名 互转

    使用场景 sql字段转为java字段,直接从数据库通过sql语句 取出来的数据都是数据库字段,如果需要反射实例化对象 则需要把从下划线命名转为驼峰命名. /*** * 下划线命名转为驼峰命名 * * ...

  3. Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略

    Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略 目录 双下划线介绍 1.关于双下划线的函数或方法或属性 双下划线介绍 1.关于双下划线的函数或方法或属性 __name_ ...

  4. 处理字符串_8_判断字符串含有汉字

    判断字符串含有汉字 需求描述 需求:检索含有汉字的字符串. 解决方法:这里通过函数CHAR_LENGTH对比LENGTH进行对比来判断. 注: 数据库数据集SQL脚本详见如下链接地址 员工表结构和数据 ...

  5. springboot接口入参下划线转驼峰以及返回参数驼峰转下划线实现

    转自:springboot接口入参下划线转驼峰以及返回参数驼峰转下划线实现 - 李东平|一线码农 - 博客园 (cnblogs.com) 1.背景 在实际开发中,通常来说java里面是使用驼峰的命名规 ...

  6. java 下划线_Java SE 9:“ _”(下划线)更改

    java 下划线 In this post, we will discuss about What is the use of Underscore ("_") in Java M ...

  7. php css下划线,css下划线如何设置?css设置文字下划线的方法介绍

    在网页中默认情况下文字字体是没有下划线样式的,但是有时候我们在网页中会看到不是链接的文字下面会有一行下划线,那么这个下划线样式是怎么实现的呢?本篇文章就来给大家介绍一下css设置文字下划线的方法,接下 ...

  8. a标签去下划线或文字添加下修饰_怎么去掉html a超链接下划线

    我们在HTML网页制作过程中,相信大家对css文本超链接这个概念并不陌生.我们都知道想要给某段文本或者指定元素添加一个锚点也就是超链接需要用到HTML中的a标签.程序猿的生活:打造全网web前端全栈资 ...

  9. css选择器下划线设置,css中怎么设置字体下划线

    css中设置字体下划线的方法:1.使用"text-decoration:underline;"设置下划线样式:2.通过"border-bottom"属性设置下划 ...

最新文章

  1. 天猫双十一神话恐终结
  2. 和晋叔吹B讨论业务驱动与架构演进
  3. c语言使用求余方式的转化为二进制程序,C语言第三讲 程序结构 (下).ppt
  4. 函数可重入性及编写规范
  5. CDialogBuilder 类
  6. Exploit 代码用于攻击中?GitHub 马上删除
  7. jdbctemplate调用 mysql存储过程
  8. 让Kubernetes成为数据中心操作系统(DCOS)的一等公民
  9. C#将DBGrid中数据导出为Excel的很小很强大的代码
  10. 狗猫分类数据集划分详解
  11. 1、Struts2基本入门
  12. vue移动端上拉加载,下拉刷新(mescroll)
  13. android 抓包与防抓包设置
  14. 高中计算机会考知识点选择题,高中信息技术会考选择题知识点
  15. 概率密度,概率分布和联合概率分布
  16. 网站服务器在国外怎么维护,网站服务器如何维护
  17. 为啥外包喜欢php,为什么要面向对象?
  18. font-style 属性 oblique 是什么意思
  19. 2021邵阳市区三中高考成绩查询,2021年邵阳市普通高考科目及各科分数
  20. java后台获取Excel后缀名以及sheet页名称

热门文章

  1. ARM汇编EQU伪指令
  2. php提供的魔术常量
  3. hdu 2019 数列有序!(c语言)
  4. Robot Framework(十二) javascript基础
  5. npm -S -D -g i 有什么区别
  6. Ubuntu16.04开机引导缺失Win10
  7. 学习有五个层次和境界
  8. 关于范数与正则化详解(转)
  9. java怎样读取数据库表中字段的数据类型?
  10. 运用Java对微信公众平台二次开发技术——开发者模式接入