我有一个图像上传脚本,我在其中使用以下设置为上传的图像指定名称;
$saltdate = date( 'U' );
$saltuser = $_SERVER[REMOTE_ADDR];
$saltname = md5($saltdate.$saltuser);
// Recieve, Process, Save uploaded image
// Update database with image name
我遇到的问题是,在处理/保存图像后,当它将该文件名添加到数据库时,$saltdate
的值似乎已经改变,我将获得一个文件名。不存在的数据库。
修改
值已更改,因为从命名文件到将名称存储在数据库中时,时间会增加。
我如何确定一旦建立后该值不会改变?
答案 0 :(得分:1)
使用define
将其设置为常量答案 1 :(得分:1)
由于您使用的是md5()
函数,因此请确保在检索记录时执行相同的操作。请注意,您在盐中使用日期,确保事情匹配。
一种简单的方法是使用microtime
函数。
答案 2 :(得分:1)
这是一种错误,调试器非常方便。您可以在代码中设置断点,然后逐步执行它并检查变量的状态等。
您可以使用XDebug作为服务器端php模块,例如netbeans作为前端/思想 在http://netbeans.org/kb/docs/php/debugging.html
上有一个简短的介绍