【问题标题】:how to send variables using file_get_contents?如何使用 file_get_contents 发送变量?
【发布时间】:2016-01-15 05:29:23
【问题描述】:

我正在尝试将网页作为电子邮件发送。这个网页的内容是基于变量的,这些变量是使用 _GET 方法调用的。

我有这部分代码,如果我不在 URL 中放置任何变量,它就可以工作,但只要我在 URL 后面写 ?variable=,就会回显 [function.file-get-contents]: failed to open stream: No such file or directory in...

<?

$var_one = $_GET['var_one'];
$var_two = $_GET['var_two'];
$from = "Company name";
$from_email = "company@mail.com";
$email_text = file_get_contents("mail_this_page.php?varone=".$var_one."&vartwo=".$var_two);

$headers = "From:abc@mail.com";
$headers = "From: $from <$from_email>\r\n". 
           "MIME-Version: 1.0" . "\r\n" . 
           "Content-type: text/html; charset=UTF-8" . "\r\n";

mail('guest@mail.com', 'Hello', $email_text, $headers);

?>

所以,问题出在file_get_contents 行。

$email_text = file_get_contents("mail_this_page.php");

有效,但是

$email_text = file_get_contents("mail_this_page.php?varone=".$var_one."&vartwo=".$var_two);

没有。我究竟做错了什么?如何使用这种方法传递变量?

【问题讨论】:

标签: php file-get-contents


【解决方案1】:

函数file_get_contents() 将文件名字符串作为参数。然后使用它来检查文件系统是否有具有该确切名称的文件。由于您传递的文件名不以扩展名“.php”结尾,它正在寻找一个名称包含“?”之后(并包括)所有内容的文件。

它实际上是在硬盘驱动器上查找文件 mail_this_page.php?varone=VAR_ONE&vartwo=VAR_TWO(假设变量如此计算)。

【讨论】:

猜你喜欢
  • 2011-10-17
  • 2010-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多