Announcement

Collapse
No announcement yet.

Ich verstehe die Welt nicht mehr. Plötzliche Weiterleitung auf PHP-Seite.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ich verstehe die Welt nicht mehr. Plötzliche Weiterleitung auf PHP-Seite.

    Hi Leute,

    ich verstehe die Welt nicht mehr. Gestern lief alles noch ganz normal. Hab meinen Laptop in den StandBy gesetzt, mich schlafen gelegt und als ich heute morgen aufgestanden bin ist alles ganz anders.
    Ich arbeite mich gerade in ExtJs und PHP ein, bin in beiden Bereichen ein Neuling.

    Ich will mittels PHP und ExtJs einen FileUpload realisieren.

    Hier mein JavaScript-Code:
    Code:
    buttons: [{
                    text: 'Upload',
                    handler: function() {
                        panelRightTop.getForm().submit({
                        	url: 'FileUploading.php',
                            waitMsg: 'Uploading ....',
                            success: function(form, o) {
                                 Ext.Msg.alert('Success', 'All files uploaded');
    			}
                        });
                    }
                }
    Der Code erstellt einen Button der mich zur PHP Seite leitet die den Upload realisiert.
    Wenn es geklappt hat, erscheint ein alert-Fensterchen mit der dort beschriebenen Meldung. Aufjedenfall blieb ich immer auf der JavaScript-Seite und wurde nicht auf die FileUploading.php Seite weitergeleitet.

    Hier ist mein PHP Code:
    PHP Code:
    foreach($_FILES['img']['name'] as $key => $img) {
        if (
    in_array($_FILES['img']['type'][$key], $allowedType)) {
              
    // upload file
                
    move_uploaded_file($_FILES['img']['tmp_name'[$key],                      'Uploads/'.$_FILES['img']['name'][$key]);
     
            
    // count how many files uploaded
                
    $uploaded++;
          
                
    $failed++;
            
        } else if (
    $_FILES['img']['type'][$key] != '') {
            
    $failed++;
        }

    Das Problem ist dass wenn ich mir ne Datei zum hochladen ausgesucht und danach den Button gedrückt habe bin ich immer auf der JavaScript geblieben. Es erschien immer die alert-Box die auch bei success erscheinen soll. Naja jetzt hab ich gestern meinen Laptop in den StandBy gesetzt und als ich heute morgen aufgewacht bin, werde ich nach dem FileUpload auf die FileUploading.php Seite geleitet und bleibe da auch. Wieso das aufeinmal?
    Ich verstehe das nicht. Gestern bin ich noch auf meiner JS-Seite geblieben die bei success die alert-Box-Meldung ausgespuckt hat, und heute morgen aufeinmal werde ich auf die FileUploading.php Seite weitergeleitet.
    Ich verstehe die Welt nicht mehr.
    Kann mir jemand helfen?

  • #2
    Der Upload ist ein Request zum Server. Also irgendwoher muss der neue Content für die Seite kommen und

    url: 'FileUploading.php',

    deutet darauf hin, dass diese den Content liefern muss
    Christian

    Comment


    • #3
      Die fileUploading.php soll nur die Dateien hochladen, nichts weiter.
      Ich verstehe nicht wieso ich aufeinmal auf die fileUploading.php weitergeleitet werde und nicht auf meiner html seite die ja das JS aufruft bleibe.
      War ja die ganze Zeit schon so jetzt aufeinmal leitet der mich auf diese PHP seite weiter.
      Ich will einfach nur die Dateien hochladen und nicht daraufhin auf eine andere Seite weitergeleitet werden.

      Comment


      • #4
        ich weiss nicht was du vorher gemacht hast und kenne das Framework nicht, aber

        - der Code zeigt, dass ein submit ausgeführt wird
        - wenn du vom Client ein PHP-Script aufrufen willst, ist ein Submit oder AJAX-Request erforderlich
        - Javascript kann kein Upload vornehmen
        - ein Submit ist ein Request an den Sever
        - der Requesr muss mit einem Response beantwortet werden

        Ich will einfach nur die Dateien hochladen und nicht daraufhin auf eine andere Seite weitergeleitet werden.
        - dann muss du als Response diese Seite wieder anzeigen
        - oder mi deinem Upload kein Submit auslösen, sondern ein AJAX-Request benutzen
        Christian

        Comment


        • #5
          Hey Christian,
          Schuld daran war eine Konfiguration im FormPanel und zwar die standardSubmit:true.
          Hier die Beschreibung von der ExtJs-Api:

          A class which handles submission of data from Forms using a standard <form> element submit. It does not handle the response from the submit.

          If validation of the form fields fails, the Form's afterAction method will be called. Otherwise, afterAction will not be called.

          Instances of this class are only created by a Form when submitting, when the form's Ext.form.Basic.standardSubmit config option is true.

          Danke für deine Hilfe.

          Comment

          Working...
          X