Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在if(isset)函数外部获取变量值_Php_Global Variables_Isset - Fatal编程技术网

Php 在if(isset)函数外部获取变量值

Php 在if(isset)函数外部获取变量值,php,global-variables,isset,Php,Global Variables,Isset,我正在实现一个界面,用户应: 在uploadframe.php中。选择供应商 在upload.php中。选择并上载文件,这些文件通过AJAX请求发送到服务器 问题是,我通过POST方法获得提供者名称(非常重要),在AJAX Request之后,它返回到upload.php页面,这里不显示提供者,因为这次它不是isset()。我想保留相同的提供者名称,直到我返回到Uploadframe.php页面并在那里更改它 Uploadframe.php: Activ/Kcell 直线 Tele2/Alte

我正在实现一个界面,用户应:

  • 在uploadframe.php中。选择供应商
  • 在upload.php中。选择并上载文件,这些文件通过
    AJAX请求发送到服务器
    问题是,我通过
    POST
    方法获得提供者名称(非常重要),在
    AJAX Request
    之后,它返回到upload.php页面,这里不显示提供者,因为这次它不是
    isset()
    。我想保留相同的提供者名称,直到我返回到Uploadframe.php页面并在那里更改它

    Uploadframe.php:

    
    Activ/Kcell
    直线
    Tele2/Altel
    

    Upload.php:

    if(isset($\u POST['provider'])){
    //选择要在不同提供者的情况下执行的操作
    如果($_POST['provider']=='activkcell'){
    全球$提供者;
    $provider=“Activ/Kcell”;
    }
    如果($_POST['provider']=='beeline'){
    全球$提供者;
    $provider=“Beeline”;
    }
    如果($_POST['provider']=='tele2altel'){
    全球$提供者;
    $provider=“Tele2”;
    }
    }
    您已选择提供程序

    //文件选择 //Jjax脚本
    我尝试将我的
    $provider
    变量设置为全局变量-不起作用,使用define('provider',$provider)-在
    ajax请求后显示“provider”


    谢谢你的帮助。(我不想把它保存在其他地方,比如创建一个文本文件并在uploadframe.php中更新它。我相信有比这些更好的解决方案。)

    如果我理解正确,您的
    Uploadframe.php
    provider
    的值提交给
    upload.php
    ,在这个
    upload.php
    上,您在用户上传文件后进行ajax调用,现在您需要在处理ajax请求的脚本中使用
    provider
    的值


    要执行此操作,请在您发出的ajax请求中发送
    provider
    (通过$\u POST从
    Uploadframe.php
    )的值。这样,在处理AJAX请求时,您仍然可以在
    upload.php
    中获得
    provider
    的值。

    试试
    $\u SESSION
    这就是它的用途。请参阅有助于您的文档。@ArtisticPhoenix不幸的是,这不是我想要的。一个用户可以/应该上传不同提供商的文件
    $\u会话
    是您要查找的。然后将它们存储在会话中的数组中,如果您提交一个包含该数据的表单(服务器端),返回到客户端,然后返回到服务器端,这就是会话的用途,客户端->服务器关系是无状态的,您必须返回数据并将其保存在客户端,以便在下一个请求时将其发送回,或者在会话中将其保存在服务器端,以便下一个请求可以访问它。。