2017-09-24 2 views
0

Ich verwende den folgenden Code, um eine Datei erfolgreich hochzuladen, ohne die Seite zu aktualisieren. Was ich jetzt will, ist, ein Texteingabefeld für den Titel der Datei und ein Textfeld hinzuzufügen, um die Datei zu beschreiben, aber ich habe Schwierigkeiten damit. Es gibt mir einen 'undefinierten Index' Fehler. Was soll ich meinem Code hinzufügen, um die Datei, die Texteingabe und den Textbereich hochzuladen?So laden Sie eine Datei zusammen mit anderen Texteingaben hoch, ohne die Seite zu aktualisieren

HTML

<form action="trash_one.php" method="post" id="uploadForm"> 
    <div id="targetLayer">No Image</div> 
    <div id="uploadFormLayer"> 
    <label >Upload Image</label><br> 
    <input type="file" class="inputFile" name="userImage" id="userImage"> 
    <input type="submit" name="submit" class="btnSubmit"> 
</form> 
<div> 

ERWARTET HTML FORM

Texteingabe und Textbereich hinzugefügt

<form action="trash_one.php" method="post" id="uploadForm"> 
    <div id="targetLayer">No Image</div> 
    <div id="uploadFormLayer"> 
    <input type="text" name="img_name"> 
    <label >Upload Image</label><br> 
    <input type="file" class="inputFile" name="userImage" id="userImage"> 
    <textarea name="description" ></textarea> 
    <input type="submit" name="submit" class="btnSubmit"> 
</form> 
<div> 

JAVASCRIPT

PHP

Dieses Skript lädt die Datei nur

if(is_array($_FILES)){ 
    if(is_uploaded_file($_FILES['userImage']['tmp_name'])){ 
     $sourcePath = $_FILES['userImage']['tmp_name']; 
     $targetPath = "imagess/".$_FILES['userImage']['name']; 
     if(move_uploaded_file($sourcePath,$targetPath)){ 
     ?> 
     <img src="<?php echo $targetPath; ?>" width="100px" height="100px" /> 
     <?php 
     } 
    } 
} 
+0

Ihr Code arbeitete für mich, versuchen Sie 'print_r ($ _ POST);' es sollte Ihnen zeigen, dass Ihre Daten durch gekommen sind. – MinistryofChaps

+0

Natürlich funktioniert mein Code. Was ich tun möchte, ist, ein Textfeld und Textbereich zum Formular hinzuzufügen. Wenn ich diese Felder hinzufüge, welche Änderung sollte ich an meinem PHP-Skript und Javascript vornehmen, um alle Daten hochzuladen? – Oponjous

+0

So haben Sie die Datei Daten speichern funktioniert, nur die anderen Daten durch '$ _POST'. also '$ name = $ _POST ['img_name']; $ description = $ _POST ['description']; '. – MinistryofChaps

Antwort

0

Sie sind Code bereits arbeitet wie Sie wollen. Werfen Sie einen Blick auf das $_POST Array anstelle des $_FILES Arrays. Das Post-Array enthält alle Inhalte des Textfelds. Das Dateiarray enthält hochgeladene Dateien.

Verwandte Themen