用了一个jquery上传文件的插件 uploadify,例子是php的,其他不用看,就看红色代码部分,我想把这些php代码作为.php文件来保存,然后像蓝色那样调用。我尝试着定义了a.php和b.php两个文件
a.php:
<?php
$timestamp = time();
echo $timestamp;
?>
b.php:
<?php
$timestamp = time();
echo echo md5('unique_salt' . $timestamp);
?>
然后,在html中这样调用
.......
'timestamp' : 'a.php',
'token' : 'b.php'
.......
结果,文件上传不了。这个可能的原因是什么呢?我估计是$timestamp = time();这个,两次调用,导致不同所致。
像下面php和html混杂这种方式,$timestamp = time();就只执行了一次。
有什么方式让a.php和b.php用一个$timestamp?多谢指点先。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>UploadiFive Test</title>
<script src="../js/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="jquery.uploadify.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="uploadify.css">
<style type="text/css">
body {
font: 13px Arial, Helvetica, Sans-serif;
}
</style>
</head>
<body>
<h1>Uploadify Demo</h1>
<form>
<div id="queue"></div>
<input id="file_upload" name="file_upload" type="file" multiple="true">
</form>
<script type="text/javascript">
<?php $timestamp = time();?>
$(function() {
$('#file_upload').uploadify({
'formData' : {
'timestamp' : '<?php echo $timestamp;?>',
'token' : '<?php echo md5('unique_salt' . $timestamp);?>'
},
'swf' : 'uploadify.swf',
'uploader' : 'uploadify.php',
'onUploadSuccess' : function(file, data, response) {
alert('The file was saved to: ' + data);
}
});
});
</script>
</body>
</html>
------解决方案--------------------
继承父类或者使用include包含
楼主直接把'formData' : {
'timestamp' : '<?php echo $timestamp;?>',
'token' : '<?php echo md5('unique_salt' . $timestamp);?>'
},
这个验证参数去掉,没什么用就是个时间验证
------解决方案--------------------
php变量在js里面是没办法分离,就算用到模板,只是换了一种显示格式而已。