你能告诉我这段代码有什么问题:
require( 'prepareOrder.php?oID='.$orders["id"].'');
其中:prepareOrder.php是位于网页根文件夹中的php
并且orders[id]
是来自sql数据库的id。
答案 0 :(得分:1)
在PHP中,require()
只获取文件名。这意味着如果您require('somefile.php?somevar=somevalue');
,这将检查是否存在名为somefile.php?somevar=somevalue
的文件。我猜测"你没有这个名字的文件:)
因此,如果需要将参数传递给包含的文件,则只需在包含文件之前声明这些参数。
示例:如果您需要包含somefile.php
并在其中使用$somevar
,请按以下步骤操作:
$somevar = 'somevalue';
include('somefile.php');
或
require('somefile.php');
然后您可以在$somevar
内使用somefile.php
而不会出现任何问题:)
答案 1 :(得分:0)
首先,您的系统中是否存在此类文件?名字
在文件include / require之前声明的所有变量在该文件中都可用,并且在included / required文件中声明的变量也可以在父文件中使用。
因此,只需在其他文件中访问时包含文件和访问变量;)
答案 2 :(得分:0)
在要求或包含文件时,您无法传递参数。它不是作为Web请求执行的,而是简单地包含在源代码中 - 想象复制并粘贴文件的源代码内容,而不是最终结果。
请参阅include()
的{{3}}。
答案 3 :(得分:0)
PHP的require()
函数不接受GET
参数作为请求路径的一部分。
因此,PHP正在寻找一个物理名为prepareOrder.php?oID=1
的文件(假设$orders["id"]
= 1
)
但是,您应该能够访问$orders
文件中的prepareOrder.php
数组,以便在所需文件中使用id
键。