我有时间问题。如果我使用 php 进行某些操作,我正在制作一个卡拉 OK 网站。该网站是用 Drupal 制作的。我的问题是我正在使用 date() 来制作所录制歌曲的文件名。但是这个文件名在我的页面上的两个地方使用。第一个位置是在页面加载后立即生成文件名,并“回显”它以供小程序使用。小程序是在用户录制歌曲后离开页面时最后上传文件。
按下按钮时,第二个位置将使用文件名。此代码会将文件名写入节点(我的歌曲)以供稍后访问。所以两个文件名必须相同。问题是两个代码使用常量的时间之间存在差异。所以节点My Songs中写入的文件名与上传的文件名不一样。因为两个代码使用文件名时有4-5分钟的差异。我想函数: date('dmhi') 存储在常量中,而不是函数的字符串(结果)中。我尝试使用一个变量并首先用一个字符串对其进行初始化,以便它仍然是一个字符串,但它不起作用。我更像是一个 C++ 和 VB 编码器,所以我不明白变量和常量在 php 中是如何工作的。我在网上搜索了几天,但没有找到任何答案。我希望你们能帮助我。这是我的代码的一部分:
第一次出现:
<?php
Global $user;
profile_load_profile($user);
$name = $user->name;
define("FILE", $title . $name . date('dmhi') . ".spx");
echo "<param name=\"refreshURL\" value=\"http://english.karavid.com/node/2?sampleName=" . FILE . "&movie=" . $movie . "&title=" . $title . "&name=" . $name . "\">\n";
echo "<param name=\"uploadFileName\" value=\"" . FILE . "\">\n";
?>
按下按钮时的第二次出现:
$node1->body = substr($node1->body, 0, -8) . "<tr>
<th scope=\"col\"><a href=\"http://english.karavid.com/node/2?sampleName=" . FILE . "&movie=" . $movie . "&title=" . $title . "&name=" . $name . "\">" . $title . "</a></th>
<th scope=\"col\">" . date('j M Y') . "</th>
<th scope=\"col\"></th>
</tr> </table>";
node_save($node1);
提前感谢您能给我的任何线索。
娜塔莉
编辑:
我会尽力解释得更好。我正在生成一个页面,该页面将在小程序(语音记录器)中构建一些代码。在那个applet 中,我使用php 来制作applet 代码的一部分。那部分是让小程序上传用户完成的录音。现在,我需要一个对每个用户都不同的文件名。如果用户在一天中多次录制同一首歌曲,则文件名必须不同,所以我在文件名中使用日期和时间。使用函数 date();
但是该文件名是在加载时生成的。所以文件名将包括加载页面的时间。后来当用户真正保存歌曲时,时间已经过去,但上传的文件名包含加载时间而不是保存时间。发生这种情况是因为在加载页面时小程序内的文件名是“echo”(ed)。我没有其他办法可以解决它。
但是,我想保留这段时间,以便我可以再次使用它。问题是当我再次尝试使用文件名时,时间不再相同。几分钟过去了。所以文件名不一样。并且当文件名在保存后记录后写入另一个页面(节点或文件)时,它与前一个不一样。
我知道这有点复杂。但基本上,我需要生成一个包含时间的文件名。并在两个场合使用相同的文件名,这将用一个时间范围分隔。但文件名不应更改。