Empfehlungen: Erweiterte Suche

file upload: probleme mit jquery und ajax

JavaScript und AJAX

file upload: probleme mit jquery und ajax

Beitragvon tom.fox » Sa 31. Jul 2010, 18:00

hallo zusammen,

ich habe bisher erfolgreich ein bild hochladen und resizen programmiert. allerdings ohne web 2.0 feeling. ich möchte gerne dass während dem hochladen ein lade-icon erscheint. ich habe mich an diesem bsp orientiert:

http://elmicoxcodes.blogspot.com/2007/0 ... jax-1.html

also hab ich erstmal in meiner view die ajaxupload.js "registriert und das onclick-event programmiert:
Code: Alles auswählen

//in the head section:
<script type="text/javascript" src="js/ajaxupload.js"></script>

//then:

<form action="uploadProfileImage" method="post" name="standard_use"
id="standard_use" enctype="multipart/form-data">
<p><input type="file" name="filename" /></p>

<button onClick="ajaxUpload(this.form,'users/
uploadProfileImage','image_preview','Loading...','Error in upload');
return false;"
type="button">test</button>
                        </form>

 


man sieht ich rufe eine funktion uploadProfileImage auf, die ich in meinem controller "users_controller" habe:
Code: Alles auswählen

     function uploadProfileImage()
     {

        $image_path = $this->Image->upload_image_and_thumbnail($this-

>data,"",200,150,$this->Session->read('User.username'), true);

        $updates = $this->User->findByUsername($this->Session-
>read('User.username'));

                $updates['User']['image_path']= $updates['User']['username']."/".
$updates['User']['username'].".jpg";
                $this->User->save($updates);

        $this->redirect(array('controller' => 'users', 'action' =>
'editprofile'));

     }
 


diese funktion lädt das bild hoch und resized es. allerdings wird diese fkt erst gar nicht aufgerufen.

denn drücke ich den button, der in der view erstellt wurde, passiert rein gar nix. cake scheint auf das onclick gar nicht zu reagieren.

habt ihr ne idee? freue mich auf euer feedback
tom.fox
 
Beiträge: 11
Registriert: So 20. Jun 2010, 15:49

Re: file upload: probleme mit jquery und ajax

Beitragvon tom.fox » Sa 31. Jul 2010, 18:28

hab das problem gefunden

richtig
<script type="text/javascript" src="../js/ajaxupload.js"></script>

falsch
<script type="text/javascript" src="js/ajaxupload.js"></script>

doch es tun sich neue abgründe auf :(

jetzt bekomme ich da web 2.0 feeling, da mir der "...loading" text während das ladens angezeigt wird. aber:

a) das bild wird nicht hochgeladen. ich denke er ruft die fkt im controller nicht auf.
b) dadurch dass ich in meiner aufrufenden funktion
Code: Alles auswählen
        $this->redirect(array('controller' => 'users', 'action' => 'editprofile'));
 


stehen habe, wird im div, in dem eigentlich das hochgeladene bild angezeigt werden soll, nochmal die ganze seite angezeigt. wenn ich das redirect lösche, verlangt cake nach einer view. was ja sinn macht. nur hab ich dafür keine view vorgesehen, da die fkt ja nur das bild hochlädt.??

was muss ich tun, damit die fkt im controller aufgerufen wird und nicht die ganze seite in mein div geladen wird, sondern nur das bild??



thx :)
tom.fox
 
Beiträge: 11
Registriert: So 20. Jun 2010, 15:49

Re: file upload: probleme mit jquery und ajax

Beitragvon tom.fox » So 1. Aug 2010, 16:43

habs gelöst....thread kann geschlossen werden :)

lösung: einsatz von render()
tom.fox
 
Beiträge: 11
Registriert: So 20. Jun 2010, 15:49


Zurück zu JavaScript und AJAX

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast