Javascript 从页面中设置的值在php中设置会话

Javascript 从页面中设置的值在php中设置会话,javascript,php,jquery,ajax,session,Javascript,Php,Jquery,Ajax,Session,我正在尝试将php会话设置为onload $_SESSION["tusername"] = $_POST['ttuser']; 但是,我的值是在jQuery中对$(function(){ 加载页面时,不会设置会话,因为我认为会话是在jQuery设置textbox值之前设置的。我尝试使用ajax将值发布到页面,但它没有检索到该值 我现在设置会话的唯一方法是单击按钮,完全相同 有什么想法吗 提前谢谢 编辑 这是一个开始的函数,根据请求设置了所有内容 $(function() { // Ini

我正在尝试将php会话设置为onload

 $_SESSION["tusername"] = $_POST['ttuser'];
但是,我的值是在jQuery中对
$(function(){

加载页面时,不会设置会话,因为我认为会话是在jQuery设置textbox值之前设置的。我尝试使用ajax将值发布到页面,但它没有检索到该值

我现在设置会话的唯一方法是单击按钮,完全相同

有什么想法吗

提前谢谢

编辑 这是一个开始的函数,根据请求设置了所有内容

$(function() {
  // Initialize. If we are already logged in, there is no
  // need for the connect button
  Twitch.init({clientId: CLIENT_ID}, function(error, status) {
    if (status.authenticated) {
      // we're logged in :)


      $('.authenticatedd').removeClass('hidden');
    } else {
      $('.welcometitle').html('<strong>Not yet connected with Twitch?</strong>');

      // Show the twitch connect button
      $('.authenticate').removeClass('hidden');
    }
  });


var token = Twitch.getToken();
      $('.twitch-connect').click(function() {
        Twitch.login({
          scope: ['user_read', 'channel_read', 'channel_editor', 'channel_commercial', 'user_subscriptions', 'channel_check_subscription']
        });
      })

Twitch.api({method: 'channel'}, function(error, channel) {
      $('#streamkey').text(channel.stream_key);
    });


    Twitch.api({method: 'user'}, function(error, user) {
    var tusername = user.display_name;
    var tlogo = user.logo;
    $('#twitchname').text(tusername);
    $('#ttuser').val(tusername);
$.get("setsession.php?ttuser="+tusername, function(){

});
    console.log(tlogo);

    if (tlogo != null)
    $('#twitchlogo').attr('src', tlogo);
$.cookie('logo', tlogo, { expires: 14, path: '/'});

    $('.sidename').html('<strong>' + tusername + '</strong> Logged in');
    var currentdate = new Date(); 
    var datetime = currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds();    
    var items = [];
 items.push('<li><div class="xe-comment-entry"><div class="xe-comment"><a href="#" class="xe-user-name"><span class="label label-success">Status</span></a><p><span class="label label-danger">' +datetime+ '</span> Logged in</p></div></div></li>')
 $('#eventlog').prepend( items.join('') );
    });
$(函数(){
//初始化。如果我们已经登录,则没有
//需要连接按钮吗
init({clientId:CLIENT_ID},函数(错误,状态){
如果(身份验证){
//我们已登录:)
$('.authenticatedd').removeClass('hidden');
}否则{
$('.welcometitle').html('尚未与Twitch连接?);
//显示twitch connect按钮
$('.authenticate').removeClass('hidden');
}
});
var token=Twitch.getToken();
$('.twitch connect')。单击(函数(){
Twitch.login({
范围:[“用户读取”、“频道读取”、“频道编辑器”、“频道商业”、“用户订阅”、“频道检查订阅”]
});
})
api({method:'channel'},函数(错误,通道){
$('#streamkey').text(channel.stream_key);
});
api({method:'user'},函数(错误,用户){
var tusername=user.display\u name;
var tlogo=user.logo;
$('twitchname').text(tusername);
$('#ttuser').val(tusername);
$.get(“setsession.php?ttuser=“+tusername,function()){
});
console.log(tlogo);
if(tlogo!=null)
$('twitchlogo').attr('src',tlogo);
$.cookie('logo',tlogo,{expires:14,path:'/'});
$('.sidename').html(''+tusername+'已登录');
var currentdate=新日期();
var datetime=currentdate.getHours()+“:”+currentdate.getMinutes()+“:”+currentdate.getSeconds();
var项目=[];
items.push(“
  • ”+datetime+”已登录) $('#eventlog').prepend(items.join(''); });

  • });

    为什么不直接请求一个php文件来启动会话呢

    myfile.php

    <?php
    session_start();
    $_SESSION["tusername"] = $_REQUEST['ttuser'];
    echo "Session is : "+$_SESSION["tusername"];
    ?>
    

    请你再澄清一下。你想实现什么,你尝试了什么,问题出在哪里。我们没有足够的代码来进行合理的猜测。基本上,我有一个名为“status.php”的页面,在登录时,页面加载时会将一个变量设置为div标记值。我正在尝试将会话变量设置为该值。但是,我认为在文本值设置为div标记之前,会话被设置为null。该变量来自何处(变量被设置为div标记值)?它来自何处->Twitch.api({method:'user'},function(error,user){var tusername=user.display_name;var tlogo=user.logo;$('twitchname').text(tusername);$('ttuser').val(tusername);..我试过了,它在这里回显了会话名称,但当我在另一个页面上检查会话时,它不会读取它们是否在同一个域上?是的。我将$.get(“myfile.php?ttuser=”放入+tusername,函数(){});在Twitch.api函数中,如果是这样的话?哦,我知道它现在在做什么了,我想你误解了。我需要将“tusername”设置为会话,因为它是安全的,不能更改。我只需要在status.php为loadedIt时设置会话,在登录var tusername=user.display\u name;
    <?php
    session_start();
    $_SESSION["tusername"] = $_REQUEST['ttuser'];
    echo "Session is : "+$_SESSION["tusername"];
    ?>
    
    $(function(){
    $.get("myfile.php?ttuser="+tusername, function(data){
    console.log(data);
    });
     $('#ttuser').val(tusername);
    });