Soucis pour le bouton parcourir

Eléphanteau du PHP | 17 Messages

14 août 2009, 13:23

Bonjour voilà j'essaye de mettre un lecteur MP3 sur le site et que l'acheteur du site puisse le gérer depuis une back office.

Donc j'ai mis un bouton parcourir :
echo "<form METHOD='POST' ENCTYPE='multipart/form-data'>";
echo "<INPUT type=hidden name=MAX_FILE_SIZE  VALUE=6000>
          <INPUT type=file name='nom_du_fichier'>";
Le problème c'est que je voudrais récupérer le titre du fichier et aussi déplacer le fichier dans un autre dossier. Donc j'ai essayer de passer au javascript

$_FILE => Qui est censé récupérer toute les donnée => Appris dans 01net

Mais javascript ne le comprend il marque array()[native code]. Donc je voudrais savoir comment faire :(

Eléphant du PHP | 369 Messages

14 août 2009, 14:44

Salut,
Bonjour voilà j'essaye de mettre un lecteur MP3 sur le site et que l'acheteur du site puisse le gérer depuis une back office.
Donc j'ai mis un bouton parcourir :
echo "<form METHOD='POST' ENCTYPE='multipart/form-data'>";
echo "<INPUT type=hidden name=MAX_FILE_SIZE VALUE=6000>
<INPUT type=file name='nom_du_fichier'>";
Le problème c'est que je voudrais récupérer le titre du fichier et aussi déplacer le fichier dans un autre dossier. Donc j'ai essayer de passer au javascript
$_FILE => Qui est censé récupérer toute les donnée => Appris dans 01net
Mais javascript ne le comprend il marque array()[native code]. Donc je voudrais savoir comment faire :(
01net est une base d'infos, le copier/colller n'est pas l'idée ultime...

Ouin... Pas de SVP... Ouin... On va dire que t'as oublié ;)

Le transfert php -> JS est assez sommaire et (je trouve) pas trop propre mais je ne connais pas
d'autres moyens malheureusement que faire ainsi. (sans parler d'Ajax s'entend).
Tu te charges via php d'écrire la fonction JS puis d'y placer les éléments reçus ce qui peut s'écrire par:
<?php

 // Ou  $arrayDataPhp est le tableau de tes données...
 //
 $arrayDataPhp = array("un", "deux", "trois");

 // Déclaration de la variable afin d'être récupérée par la suite
 //
 $fonct = "";

 // Ne fait que boucler sur les éléments du tableaux
 //
 foreach($arrayDataPhp AS $value)
 {
    $fonct .= "\"".$value."\", ";
 }
 $fonct = "fonct(".rtrim($fonct, ' , ').");";

 // Oblige à passer comme ca... C'est moche non? 
 //
 $cde  = "<script langage=\"js\">\n";
 $cde .= "<!--\n";
 $cde .= "   function afterLoad()\n";
 $cde .= "   {\n";
 $cde .= "      ".$fonct."\n";
 $cde .= "   }\n";
 $cde .= "//-->\n";
 $cde .= "</script>\n";

 // ------------
 // echo $cde;
?>
La fonction "afterLoad", si bien employée, peut ne se lancer qu'une fois le script html "totalement"
chargé. C'est un peu plus "zoli" lol

Bref, tout ou presque est possible mais tout n'est pas toujours nickel ;-(

@+ bon code.

EDIT: Le $cde est biensur à placer entre <head>...</head>

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

14 août 2009, 17:16

Modération :
Afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer