1
Hallo ihr Lieben,
ich habe ein funktionales Skript, mit dem man multiple Dateien oder Bilder
aus dem BS aufrufen kann. Leider funktioniert die Übergabe an PHP nicht.
Da ich mit eurem Skript die erste Übergabe einer JS-Variablen an PHP geschafft habe, habe ich mich bei euch eingeloggt.
Nachfolgend der Code der beiden Dateien:
Die index.php:
Und hier die receiver.php
Da das erste <form>-Element der index.php den Aufruf startet, um mit der JS-Funktion über ein BS-Fenster eine multiple Auswahl zu ermöglichen, kann ich wohl davon ausgehen, dass dieses Element nicht zur Übergabe an die receiver.php taugt.
Dieses Skript listet mir alle selektierten Dateien auf. Das funktioniert.
Deshalb habe ich ein zweites <form>-Element eingefügt, welches sich auf die JS-Variable input bezieht, und auf receiver.php zielt.
Leider erhalte ich nur "[innerHTMLObjectElement]" als Ausgabe.
Alle Datenpfade und Angaben aller selektierten Dateien werden in dem <input>-Feld der "input.php" angezeigt.
Auf diesen String bin ich scharf, den hätte ich gerne.
Versuche ich da, zu viel in ein Skript zu packen, oder ist es machbar?
ich habe ein funktionales Skript, mit dem man multiple Dateien oder Bilder
aus dem BS aufrufen kann. Leider funktioniert die Übergabe an PHP nicht.
Da ich mit eurem Skript die erste Übergabe einer JS-Variablen an PHP geschafft habe, habe ich mich bei euch eingeloggt.
Nachfolgend der Code der beiden Dateien:
Die index.php:
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8" />
<title>Übergabe-Test</title>
</head>
<body>
<p><strong>Bilder auswählen:</strong></p>
<form action="index.php" method="post">
<input type="file" name="filesToUpload" id="filesToUpload" multiple="" onChange="makeFileList();" />
</form>
<form action="receiver.php" method="post">
<input type="hidden" name="input" id="input" value="" />
<button type="submit">Go To Receiver</button>
</form>
<ul id="fileList"><li>Keine Datei ausgewählt!</li></ul>
<script type="text/javascript">
function makeFileList() {
var input = document.getElementById('filesToUpload');
var ul = document.getElementById("fileList");
while (ul.hasChildNodes()) {
ul.removeChild(ul.firstChild);
}
for (var i = 0; i < input.files.length; i++) {
var li = document.createElement("li");
li.innerHTML = input.files[i].name;
ul.appendChild(li);
}
if(!ul.hasChildNodes()) {
var li = document.createElement("li");
li.innerHTML = 'Keine Datei ausgewählt!';
ul.appendChild(li);
}
document.getElementById('input').value = input;
}
</script>
</body>
</html>
Und hier die receiver.php
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8" />
<title>Übergabe-Test</title>
</head>
<body>
Ausgewählte Bilder:<br />
<br />
<?php echo $_REQUEST['input']; ?>
<form action="index.php" method="post">
<button type="submit">Go To Index.php</button>
</form>
</body>
</html>
Da das erste <form>-Element der index.php den Aufruf startet, um mit der JS-Funktion über ein BS-Fenster eine multiple Auswahl zu ermöglichen, kann ich wohl davon ausgehen, dass dieses Element nicht zur Übergabe an die receiver.php taugt.
Dieses Skript listet mir alle selektierten Dateien auf. Das funktioniert.
Deshalb habe ich ein zweites <form>-Element eingefügt, welches sich auf die JS-Variable input bezieht, und auf receiver.php zielt.
Leider erhalte ich nur "[innerHTMLObjectElement]" als Ausgabe.
Alle Datenpfade und Angaben aller selektierten Dateien werden in dem <input>-Feld der "input.php" angezeigt.
Auf diesen String bin ich scharf, den hätte ich gerne.
Versuche ich da, zu viel in ein Skript zu packen, oder ist es machbar?