我希望能够传递一个名为$connection的Imap文件从1php文件到另一个php文件使用Jquery。问题是,它不是作为对象传递的,而是被转换为一个名为resource #54的字符串--有没有可能将Imap连接对象传递给另一个PHP文件?
下面是我当前的Jquery代码,其中混合了PHP变量:
var dataString='server=<?php echo $server; ?>&email=<?php echo $email_address; ?>&connection=<?php echo $connection; ?>&password=<?php echo $password; ?>&server=<?php echo $server;?>&daysago='+daysago+'&num='+num;
$.ajax({
type: "POST",
url: "fastsearch.php",
data: dataString,
success: function(msg){使用jquery或jquery以外的其他方法将此变量传递给php文件是可能的吗?如果没有,我的变通方法是什么?是否可以在不结束PHP文件的情况下显示结果?
下面是关于imap_open和IMAP流对象的更多信息:
http://www.php.net/manual/en/function.imap-open.php
发布于 2011-04-06 13:24:40
您不能在脚本之间“传递”连接,因为它们是在单独的服务器进程下产生的,因此在它完成之后就没有对它的引用。您需要做的是使用pfsockopen打开到imap服务器的持久连接。
$f = pfsockopen('an.imap_server.com', 143)然后,您将手动构造基本的imap命令,并使用fputs将其发送到打开的连接:
$query = 'LOGIN ' . strlen($user) . "}\r\n" . $user ...
fputs($f, $query)诸若此类。
发布于 2011-04-06 21:10:12
您不能在不同的PHP脚本实例之间传递资源。
Wes的答案是正确的--但一定要读一下讨论。
如果是我,我会使用守护进程/调度作业来获取邮件-虽然您可以用PHP编写自己的作业,但我只会使用fetchmail和cron从远程系统获取电子邮件,然后将其镜像到本地邮箱中或通过procmail提供给它。
https://stackoverflow.com/questions/5561726
复制相似问题