kostenloser Webspace werbefrei: lima-city


Dynamisch belibige Anzahl Bilder im Formular hochladen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    dbzuw

    dbzuw hat kostenlosen Webspace.

    Hallo, ich brauche Hilfe.
    Und zwar möchte ich ein Script erstellen, mit dem man, in einem Formular Bilder hochladen kann.
    Die Anzahl der Bilder soll dabei nicht statisch sondern dynamisch sein. Soll heißen das der User ein Bild via <input type='file'> auswählen kann und wenn er oder sie weitere auswählen möchte nichts weiter machen muss als auf einen Button (bspw. ein plus-button) klicken, damit ein weiteres <input> erscheint.

    Zusätzlich muss das Script prüfen ob der Datenname vorhanden ist, falls ja umbenennen und und in der DB speichern (Bild muss automatisch einem Beitrag zugeordnet werden können).

    Hoffe sehr das mir einer Helfen kann. Im Internet findet man da zuviel, allerdings sind diese nicht in einem Formular ausgelegt und ich bekomme die nicht entsprechend umgeschrieben :(
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Dieses Formular-Skript kannst du mit JavaScript umsetzen. Die JavaScript-Funktion muss nur dynamisch die DOM-Knoten anlegen, was z.B. mit jQuery sehr einfach aussieht:
    $('#form').append($('<input>')
    	.attr('type', 'file')
    	.attr('name', 'datei[]'));
    (natürlich ungetestet)

    Wichtig dabei ist das
    []
    , denn dadurch sagst du PHP, dass es mehrere Dateien sind.

    Die Verarbeitung in PHP kannst du dann mit einer
    foreach
    -Schleife über
    $_FILES['datei']
    machen.

    Wenn du etwas JavaScript und halbwegs PHP kannst, dann sollte dir das bereits reichen um es bauen zu können. Ansonsten kannst du gern nochmal nachfragen, vllt baut dir jemand noch umfangreichere »Code-Schnipsel« :-P

    Beitrag zuletzt geändert: 19.4.2015 22:47:01 von hackyourlife
  4. Autor dieses Themas

    dbzuw

    dbzuw hat kostenlosen Webspace.

    Hi, vielen Dank für deine Antwort.
    Das Problem ist, dass ich von JavaScript nicht wirklich viel Ahnung habe, da ich eigentlich mit Informatik nicht viel am Hut habe, es aber gerne lernen würde. Mein Skript sieht momentan folgender Maßen aus (es handelt sich hierbei um zwei Ausschnitte):


    if(isset($_POST['speichern'])){
        if($_POST['artikelname'] == true AND $_POST['preis'] == true AND $_POST['inhalt'] == true AND $_POST['kategorie'] != "Kategorie"){
    
             mysql_query("INSERT INTO inserate (user_id, artikelname, preis, beschreibung, kategorie) VALUES ('".$_SESSION['Username']."', '".$_POST['artikelname']."', '".$_POST['preis']."', '".$_POST['inhalt']."', '".$_POST['kategorie']."')");
         $letzteid = mysql_insert_id();
         echo"
         <div id='okmeldung'>Dein Inserat wurde erfolgreich aufgenommen. Viel Erfolg ;)</div>
         <script type='text/javascript'>
                        function ausblenden(){
                            document.getElementById('inserieren').style.display='none';
                        }
                        </script>
                        <meta http-equiv='refresh' content='3; URL=index.php?cat=inserat&artikelid=".$letzteid."' />
    
         ";
        }
    else{
        echo"
        <div id='fehlermeldung'>Du musst einen Artikel-Bezeichnung, einen Preis, eine Artikel-Beschreibung angeben und eine Kategorie w&ouml;hlen!</div>
        ";
    }
    }
    <form method='POST' action='index.php?cat=verkaufen' action='index.php?cat=verkaufen' name='speichern'>
        <input name='artikelname' placeholder='Artikel-Bezeichnung' value='".$_POST['artikelname']."'>
        <select name='kategorie'>
        <option>Kategorie</option>
        ";
        $cat_auslese= mysql_query("SELECT * FROM kategorie");
        while($cat= mysql_fetch_assoc($cat_auslese)){
            echo "<option>".$cat['name']."</option>";
        }
        echo"
        </select>
        <input name='preis' placeholder='Preis' value='".$_POST['preis']."'> &euro;
    
        <textarea name='inhalt' style='width:100%; height: 250px; cursor: grab;'>".$_POST['inhalt']."</textarea>
        <input type='file' name='datei'>
        <p align='right'>
        <input type='submit' class='button' value='Inserieren' name='speichern'>
        </p>
    </form>
    </div>
    <script language='JavaScript'>
    ausblenden();
    </script>


    Wie genau integriere ich dein Befehl? :(

    Vielen lieben dank für eure Hilfe.

    Beitrag zuletzt geändert: 20.4.2015 11:04:25 von hackyourlife
  5. schau das mal an http://www.responsivefilemanager.com/ (auch mit tinymce, ckeditor gut kombinierbar)
    oder in der Demo-Seite "Stand-alone file manger"

    Benutzer kann in Session ein Ordner zugewiesen werden
    (siehe Dokumentation ->
    "SET SUBFOLDER AS ROOT AND MULTI-USER USE"
    $_SESSION["RF"]["subfolder"] ="subfolder/name/")

    Gruß mg
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!