验证使用上传时的额外输入

Validating extra input when using Uploadify

本文关键字:输入 验证      更新时间:2023-09-26

让我首先说我不是Web开发人员(或任何类型的开发人员),我只是一个卑微的IT人员,试图做3个人的工作:) 多亏了这里的其他一些帖子,我已经能够走得很远,但我仍然缺少一步。

我在上传页面中添加了一个文本框,以便用户可以输入要附加到他们上传的文件前面的用户名。前面的东西都在上传.php中。我有使用此代码的文本框数据:

<form>
     <div id="queue"></div>
     <input id="UserName" name="UserName" type="text" placeholder="Username" value="" /><br /><br />
     <input id="file_upload" name="file_upload" type="file" multiple="false">
</form>
    <script type="text/javascript">
            <?php $timestamp = time();?>
                    $(function() {
                            $('#file_upload').uploadify({
                            'formData'     : {
                                            'timestamp' : '<?php echo $timestamp;?>',
                                            'token'     : '<?php echo md5('unique_salt' . $timestamp);?>',
                                            'UserName'  : $('#UserName').val()
                                            },
                            'queueSizeLimit' : 1,
                            'multi' : false,
                            'swf'      : 'uploadify.swf',
                            'uploader' : 'uploadify.php',
                            'fileTypeExts' : '*.zip; *.txt',
                            'fileSizeLimit' : '1GB',
                            'onUploadStart' : function(file) {
                                    $('#file_upload').uploadify("settings", "formData", {"UserName":$('#UserName').val()});
                                    console.log($("#file_upload").uploadify("settings", "formdata"));
                            }
                    });
            });
    </script>

我想做的最后一件事是在实际发送文件之前验证"用户名"文本框是否有输入。 我知道我可以在服务器端 PHP 脚本上轻松完成此操作,但是如果用户没有在用户名文本框中放入某些内容,我想阻止文件上传。

有人可以指出我正确的方向吗?

所以事实证明,我所要做的就是在"onUploadStart"函数中添加以下内容:

'onUploadStart' : function(file) {
    if( $('#UserName').val() == "")
    {
     alert ("Please enter a username");
     $('#file_upload').uploadify('cancel');
    }
    $('#file_upload').uploadify("settings", "formData", {"UserName":$('#UserName').val()});