0

我正在使用来自 jquery.form.js 的 AjaxForm() 调用来尝试运行一个 php 脚本,该脚本会将数据放入数据库然后将其拉出。但是,您将如何使用来自 jquery.form.js 的 ajaxForm 调用来进行该调用?

*更新:添加了一些代码 *

    $('#profilepicbutton').live('change', function(){
    $("#preview").html('');
    $("#preview").html('<img src="loader.gif" alt="Uploading...."/>');
        $("#registerpt3").ajaxForm({target: '#preview'}).submit();
        /*$.post(
        "register3.php",{
            target:'#preview'},
            function(data){*/
                $("#preview").html('');
                $("#preview").append("<img src="+data+"></img>");
 });

我的PHP代码...

    if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
    {
  $name = $_FILES['profilepicinput']['name'];
  $size = $_FILES['profilepicinput']['size'];
  if(strlen($name))
  {
    list($txt, $ext) = explode(".", $name);
    if(in_array($ext,$valid_formats))
    {
        if($size<(1024*1024)) // Image size max 1 MB
        {
            $actual_image_name = time().$session_id.".".$ext;
            $tmp = $_FILES['profilepicinput']['tmp_name'];
            $fp      = fopen($tmp, 'r');
            $data = fread($fp, filesize($tmp));
            $data = addslashes($data);
            fclose($fp);
            if(mysql_query("insert into Personal_Photos (Email, Pics) values('$email', '$data')"))
            {
                $query="select Pics, MAX(ID) from Personal_Photos where Email='$email'";
                $result=mysql_query($query) or die("Error: ".mysql_error());
                $row=mysql_fetch_array($result);
                header("Content-type: image/jpg");
                print($row['Pics']);
            }
            else
            {
                die('Invalid query: ' . mysql_error());
                echo "failed";
            }
        }
        else
            echo "Image file size max 1 MB. Image Size:"+$size;
    }
    else
        echo "Invalid file format..";
}
else
    echo "Please select image..! Bull shit".$email;
exit;

}

所以你是说数据应该自动神奇地回来?

当我调用 ajaxForm 时,我应该调用一个函数吗?

更新:请求示例

你好。我不想成为那个不断询问示例代码的家伙,但是是否有任何机构有进行 ajaxForm() 调用并成功取回数据并将其发布到该页面的示例?我不知道该怎么做......我刚刚尝试的是

$('#profilepicbutton').live('change', function(){
    $("#preview").html('');
    $("#preview").html('<img src="loader.gif" alt="Uploading...."/>');
        $("#registerpt3").ajaxForm({
                target: '#preview',
                success: function(data)
                {                                   
                    $("#preview").html('');
                    $("#preview").append("<img src="+data+"></img>");
                }
            }).submit();
 });

当我使用萤火虫找出数据中的内容时,它告诉我它是未定义的。真的很迷茫。请帮忙。

4

1 回答 1

1

您只需这样做:$('#myFormId').ajaxForm();它应该会自动神奇地工作:) 您可以将任何标准 $.ajax 选项传递给 ajaxForm(完成和成功回调等)。

您可以在此处查看完整的文档:http: //jquery.malsup.com/form/#getting-started

于 2011-10-04T23:33:14.180 回答