INPUT Type=File keine ValueEigenschaft wie übergebe i Daten

lazman

Grünschnabel
<?php
print("<INPUT TYPE=FILE NAME=\"file_pdf\" size=\"42\" maxlength=\"255\">");

?>

Type=File hat keine Value - Eigenschaft, somit kann ich kein Wert vorbelegen.

Ich kann kein Type=Text nehmen, da der Vorteil von Type=File ist das ich einen Schaltfläche generiert bekomme, womit der User seine Maschine nach einer Datei durchsuchen kann. Nach der Auswahl steht dann der Pfad in dem Input - Feld. Den Speicher in in der DB. Jetzt will der User den Pfad irgendwann ändern, dann will ich aus der DB den Pfad in das Input Type=File schreiben.

Wie geht den das oder hoffnungslos?

Hier das Zitat:

Das Attribut value= in Verbindung mit <input type="file">, mit dem das Vorbelegen der Dateiauswahl möglich wäre, wird von moderneren Browsern aus Sicherheitsgründen nicht mehr unterstützt.

http://www.netzwelt.com/selfhtml/html/formulare/datei_upload.htm#definieren

Datt ist mein Problem
 
Hallo,

wenn User bei Dir was ändern sollen, dann schreibe ein
extra Formular wo er gleich die Daten bisher ausliesst und daneben ein Feld
wo er dann was neues eintragen kann.

Dann lässt du es einfach über die update funktion von MYSQL laufen.

Ich hoffe es war verständlich.



euer SaTaN
 
Hab ich doch?

Hi,

ich habe zwei Formulare.
1. Zum Erfassen
2. Zum Bearbeiten

Beide Formulare sind gleich aufgebaut, nur das
1 alle Felder leer (insert)
2 alle Felder vorbelegt (update)

ich habe in diesem Formular also auch wieder diese Type=File - Felder und um es für den Anwender leichter zu machen, möchte ich das gleiche Erscheinungsbild pflegen.
 
SaTaN meint, dass du in der Eingabemaske zum Editieren ein normales Text-Feld benutzen solltest.

Ich hätte noch ne andere Idee... nur mal eben mit dem IE getestet und dort wäre es möglich:
PHP:
<?php
    echo _POST['dateipfad'];
?>
<form method="post">
<div>
  <input type="file" name="datei" onchange="this.form.dateipfad.value=this.value;" style="position:absolute; width:532px;">
  <input type="text" name="dateipfad" style="position:absolute; width:400px;" value="<?=stripslashes($_POST['dateipfad']);?>">
</div>
<br /><br />
<input type="submit">
</form>
...also das ist nun ganz sporadisch... aber die Logik sollte klar sein, oder? "Einfach" das Textfeld über die Auswahl legen und den Inhalt Faken. Am Server sollte ohne enctype sowieso nix von der Datei ankommen.

Das ganze funktioniert nicht so richtig im Mozilla, da dieser kein onchange auf einem File-Feld unterstützt. Naja... aber vielleicht ists ja "nur" ne Intranet-Api, bei der du dich festlegen kannst.

Gruss
Jan
 
Zurück