0
<div class="hideAfterSuccess">
                    <label for="avatar">Upload an Avatar :</label>
                    <input type="file" name="avatar" id="avatar" />
                </div>

下面是必须将图像位置传递给另一个文件(parsePortal.php)中的 php 函数的 jquery。能够传递文件的其他类型的数据,但图像失败。我想既然它发布了图像的位置字符串,我就可以使用 $_FILES[$_POST['image']]['name'] 然后上传图像。我已经尝试过网络,当然,没有找到我需要的东西。

        $(function(){
           var imageLoc = $('avatar').val();
           var url = "parsePortal.php";
                $.post(url, {
                    status : "getimage",
                    image : "imageLoc"
                }, function(result){

                 });
            });
4

2 回答 2

0

不幸的是,通过 ajax 将文件传递给 php 并不是那么简单。但是,有一个不错的库可以让您轻松做到这一点:

http://malsup.com/jquery/form/

于 2013-01-17T07:51:30.587 回答
0

我使用 jquery forms 插件成功地做到了。这意味着它发送了我从中获取文件名并将其打印出来的整个路径。谢谢你,维克,如果没有这种帮助,我是不可能做到这一点的。

这是javascript。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script> 
<script src="http://malsup.github.com/jquery.form.js"></script> 

<script> 
        // prepare the form when the DOM is ready 
        $(document).ready(function() { 
            // bind form using ajaxForm 
            $('#htmlForm').ajaxForm({ 
                // target identifies the element(s) to update with the server response 
                target: '#htmlExampleTarget', 

                // success identifies the function to invoke when the server response 
                // has been received; here we apply a fade-in effect to the new content 
                success: function() { 
                    $('#htmlExampleTarget').fadeIn('slow'); 
                } 
            }); 
        });
</script> 

这是html

<form id="htmlForm" action="file.php" method="post"> 
Message: <input type="text" name="message" value="Hello HTML" /> <p></p>
Image : <input type="file" name="image" id="image" /><p></p>
<input type="submit" value="Echo as HTML" /> 

这是php

$image =  $_FILES['image']['tmp_name'];
$name = $_FILES['image']['name'];
move_uploaded_file($image, "uploads/".$name);
echo '<div style="background-color:#ffa; padding:20px">' . $_POST['message'] .  '</div>'; 
echo '<img src="uploads/'.$name.'"/>';
于 2013-01-18T18:01:52.517 回答