...
while ($data = mysql_fetch_array($results) && $Record_Count < 5) {
$Record_Count = $Record_Count + 1;
$_SESSION['files'][] = $sid . '-' . $data['Id'] . '-slow';
这样的东西会从$ _SESSION ['files'] []中检索文件信息,如下所示?
echo $_SESSION['files'][0];
echo $_SESSION['files'][1];
echo $_SESSION['files'][2];
echo $_SESSION['files'][3];
echo $_SESSION['files'][4];
我也将循环浏览每个项目并将物理保存到正确的文件夹中。在If语句中,我将添加一些额外的错误检查,但基本结构看起来没问题,$ scrtmp会逐个查看还是输出所有数组?
$scrtmp = $_SESSION['files'][];
if (file_exists($scrtmp)) {
@copy("/temp/" . $scrtmp ,"/items/" . date(Y) . "/" . date(m) . "/" . $scrtmp);
}
答案 0 :(得分:1)
运营商&&
和<
相对于=
的{{3}}更高,因此:
while ($data = mysql_fetch_array($results) && $Record_Count < 5) {
将被视为:
while ($data = ( mysql_fetch_array($results) && ($Record_Count < 5) ) {
将true
或false
分配给$data
。
您可以通过引入括号来解决此问题:
while ( ($data = mysql_fetch_array($results)) && $Record_Count < 5) {
除此之外,我可以看到更多可能的问题:
$scrtmp = $_SESSION['files'][];
不正确。你需要有第二个索引。类似的东西:
for($i=0;$i<count($_SESSION['files']);$i++) {
$scrtmp = $_SESSION['files'][$i];
....
}
此外,您的file_exists
函数会检查当前工作目录中是否存在文件$scrtmp
(假设$scrtmp
只有文件名而不是路径名)。但是您的copy
正在从名为/temp
的目录中复制相同的文件是您想要做的吗?