2010-05-19 9 views
2

J'essaie de réutiliser le code qui génère des champs FICHIER à utiliser quand quelque chose doit être ajouté à la base de données, et grisé (et désactivé) avec des données déjà dans la base de données lorsque l'élément en question est en train d'être édité ou vu en détail. Cependant, je n'arrive pas à obtenir le texte pour remplir le champ. J'utilise ceci:Remplir le champ FICHIER avec le texte par défaut

echo '<input type="file" name="small[]" value="' . $value_from_database . '" DISABLED><br>'; 

Ai-je rien manqué? Si non, y a-t-il des solutions de contournement décentes?

Répondre

3

C'est pas possible en raison des restrictions de sécurité. Imaginez que cela était possible, alors on serait en mesure de développer une telle page Web:

<!doctype html> 
<html lang="en"> 
    <head><title>Gimme yer passwords.txt!</title></head> 
    <body onload="document.upload.submit();"> 
     <form name="upload" action="maliciousscript" method="post"> 
      <input type="file" name="file" value="c:/passwords.txt"> 
      <input type="submit"> 
     </form> 
    </body> 
</html> 

je serais plutôt juste le montrer dans un simple champ <input type="text" disabled>.

+0

Je n'ai même pas considéré le problème de sécurité. Ça a du sens. Merci pour l'aide! – dclowd9901

+0

De rien. – BalusC

0

Je crois que vous ne pouvez pas changer cela. Au lieu de cela, utilisez une entrée cachée pour passer la valeur par défaut:

<input type="hidden" name="file_default" value="..." />

+0

Puisqu'il est déjà 'désactivé 'je ne pense pas qu'il est intéressant de le renvoyer au serveur :) – BalusC

Questions connexes