更新:阅读了我尝试过的所有建议!isset()但这似乎也不起作用。
如果有4次调用PHP文件,它们似乎必须同时到达所以当我执行时
if(!isset($_SESSION['element_01']) ){$_SESSION['element_01'] = "Something";}
似乎有2或3个调用都发现$ _SESSION ['element_01']未设置!
必须有解决方案!
=============================================== =============================
我有一个应用程序,可以从
中调用一个php文件<img src="myfile.php" />
以下是一个例子:
<img src="http://myserver.com/demo/?element=1" ></img>
<img src="http://myserver.com/demo/?element=2"></img>
<p>Check out our amazing site for everything we offer</p>
<img src="http://myserver.com/demo/?element=3"></img>
<img src="http://myserver.com/demo/?element=20"></img>
当我将元素值发送到error_log时,每个人都调用我的index.php文件,我在php_error.log中得到以下内容:(注意:它们似乎是随机顺序)
[17-Nov-2013 12:53:54] Element = 2
[17-Nov-2013 12:53:54] Element = 1
[17-Nov-2013 12:53:54] Element = 20
[17-Nov-2013 12:53:54] Element = 3
事情是我首先调用element = 1,因为我存储会话并使用$ _SESSION ['element_01']作为其他人的指南,但是因为它们似乎以随机顺序到达index.php导致PHP错误,例如:
PHP Notice: Undefined offset: -1 in http://myserver.com/demo/index.php on line 133
许多用户可以同时到达示例网页,以防万一。
所以我的问题:
谢谢。
答案 0 :(得分:1)
此顺序取决于您无法控制的因素(例如,用户的浏览器首先询问的内容以及请求到服务器的流量)。您不能依赖此订单进行任何程序。
在打印图片之前,您必须在其他地方执行此步骤。或者在使用之前检查是否定义了该变量(查看isset()语言构造),如果没有,则创建它。
答案 1 :(得分:0)
我认为没有特定的方法来获取按特定顺序加载的图像(或任何其他类型的资源)。我相信你应该用AJAX或任何其他方式加载这些图像而不是信任浏览器。