0

在过去的几周里,我就这个主题提出了几个问题。似乎我越想弄清楚这一点,我似乎离解决方案就越远。这可能只是因为我是个白痴

以下是我到目前为止所学内容的简要总结:

A) 真的没有 AJAX 上传功能。您实际上只是在更新 Ipage 表单元素。它看起来像 AJAX,但实际上并非如此。

B) 没有 valumns 的 AjaxUpload 插件。至少没有这样命名。在查看了几个关于 ajax 上传的教程之后,每个教程都引用了 AjaxUpload.js 插件并获得了绝对的 bubkis,因为在他的页面上,它没有命名为 AjaxUpload.js,它是其他名称。如果它甚至在那里。我不想经历重命名的麻烦,只是想看看会发生什么,因为这通常只会导致丑陋的错误狂欢。

C) 很多解决方案似乎都使​​用了 CAKE。不太确定那到底是什么,但它看起来像是某种基于流行的 MVC 设计模式的 PHP 设计模式。不过不太确定。

D) 这似乎是一项非常艰巨的任务。不是需要几行代码和祈祷的东西。
D1) PHP 代码看起来很简单。只需调用移动文件的函数... D2) jquery 似乎有点棘手。这是您调用上述 php 函数的地方。当我在文本框内单击以进行上传时,我想调用它...一个简单的

    $('form#inputId').change(function (){//insert the code to call php function here});

应该这样做吗?诀窍是我在那些大括号内写了什么?

这将是我对这个主题的理解的总和......这就是我所拥有的......

    <?php
    $link = mysql_connect('greetmeet.ipagemysql.com', 'greetmeet', 'Maverick$41'); 
    mysql_select_db(first_1) or die("Opps, You are pretty Got-Damned Stupid!  Did you     realize that?!?!?");
    $target = './Uploads/'; 
    $target = $target . basename( $_FILES['uploaded']['name']) ; 
    $ok=1; 

    $path = "uploads/";
    $Email = $_SESSION['user_email']; //This should be a session ID.  Must talk this over with Fellow Coder That Nigga, LJeezy West...
    $valid_formats = array("jpg", "png", "gif", "bmp","jpeg");

    if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST")
    {
        $name = $_FILES['photoimg']['name'];
        $size = $_FILES['photoimg']['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['photoimg']['tmp_name'];
                    if(move_uploaded_file($tmp, $path.$actual_image_name))
                    {
                        mysql_query("UPDATE user_pics SET    profile_pic='$actual_image_name' WHERE Email='$Email'");
                        echo "<img src='uploads/".$actual_image_name."'         class='preview'>";
                    }
                    else
                        echo "failed";
                }
                else
                    echo "Image file size max 1 MB";
                }
            else
                echo "Invalid file format..";
            }
        else
            echo "Please select image..!";
        exit;
    }
    ?>

那将是我要调用的 php 函数,它将文件移动到我的服务器,然后将链接放入数据库中。

我再说一遍,我的 jquery 代码很混乱,而且可能全都错了。我只是不知道在那里做什么。我现在只想要一些非常简单的东西。没什么特别的,只需上传带有预览的照片,然后提交完成所有内容。无论如何我可以通过将图片直接放在mysql btw中来做到这一点吗?

此外,本教程似乎很有用...... http://www.akchauhan.com/upload-image-using-hidden-iframe/ 但真的很难理解......

这是一个使用 AjaxUpload 的插件示例... AjaxUpload.js 文件在哪里? http://www.zurb.com/playground/ajax_upload

4

2 回答 2

1

我建议使用插件“ajaxfileupload.js”。这很容易使用。请查看以下链接以获取其说明并下载: http ://www.phpletter.com/Our-Projects/AjaxFileUpload/

注意:这不是使用任何闪光灯。这是它的好方面。

于 2011-09-27T08:23:34.150 回答
0

在您提到的教程中,您可能会迷失在链接中,因为使用的组件已停止维护。无论如何,您可以在这里找到项目。您想要的是项目根文件夹中的文件ajaxupload.js

于 2011-09-25T20:04:31.103 回答