Rechercher : dans
Par :

Problemen recuperation de tmp_name

jb540, le 22 mai 2009 à 00:46:29 
 Signaler ce message aux modérateurs

Bonjour à tous,

Voila , cela fais plusieurs heure que je ne parvient pas à résoudre mon problème,

Aprés avoir récupérer un code permetant le multi upload (code pas complet ^^ ) je n'arrive pas à récupérer le tmp_name de $_FILES ( le input file est crée avec du javascript et le code n'est pas de moi donc je nage !) et je ne comprend pas ou sa bloque !

En espérant que vous trouviez une solution ! je vous remercie d'avance !! Bonne soirée !





voila tous le code de la page ajoutphoto ou se trouve le form :



<?php
session_start();
if($_SESSION["login"]!="djs-electrosound")

{die("Vous n'êtes pas autorisé à accéder à cette page");}

echo'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' ;
echo'<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> ';
echo'<head> ';
echo'<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> ';



echo'<link rel="StyleSheet" type="text/css" href="style.css"/>';

echo'<title>admin</title> ';



echo'<script type="text/javascript" src="./js/prototype.js"></script>';
echo' <script type="text/javascript" src="./js/scriptaculous.js"></script>';

echo' <script type="text/javascript" src="./multiupload.js"></script>';

echo'</head> ';

echo'<body onload="init();">';
echo'<table>';
echo'<caption> Menu </caption>';
echo'<tr><td><a class="Rubrique" href="ajoutPhoto.php">Ajout Photo Soirée</a></td></tr>';
echo'<tr><td><a class="Rubrique" href="ProchaineSoirée.php">Prochaine soirée</a></td></tr>';
echo'<tr><td><a class="Rubrique" href="Deconnexion.php".php">Deconnexion</a></td></tr>';
echo'</table>';



echo'<form id="form" action="./upload.php" method="post" enctype="multipart/form-data">';
echo'<div id="upload">';
echo '<fieldset>';
echo '<legend>Ajout photo</legend>';
echo '<br/><br/>';

echo '<label for="Nom soirée">Nom soirée : </label>';
echo '<input type="text" id="nom" name="nom" size="50" maxlength="50"/>';
echo'<h1>Upload photos</h1>

<div id="fichiers">
Aucun fichier à uploader
</div>
<br/>

Uploader ce fichier :
<!-- CE SPAN RECOIT LES DIFFERENTS INPUTS CREES PUIS CACHES UNE FOIS UTILISES -->
<span id="input" name="input" ></span>
<br/>
<input class="btn" type="submit" value="Uploader"/>
</form>


</div>
<br>';
echo' </fieldset>';

echo' </body>';

echo'</html> ';
?>





voila tous le code de ma la page upload ( qui traite le form de ajoutphoto) :





<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Upload de plusieurs fichiers</title>
</head>

<body>

<h3>Fichiers uploadés</h3>

<?php

$dossier ="images/".$_POST["nom"]."";

if (is_dir($dossier)==FALSE)
{mkdir($dossier, 0777);}
include_once("connexionBD.php");
$sql= "insert into soirée (Soiree) values ('".$_POST["nom"]."')";

$result=mysql_query($sql);
if ($result==TRUE)
{
echo" <p> Soirée ajouter avec succée</p>";
}
else
{
echo"<p> $sql".mysql_error()."</p>";
}





echo $_FILES['fichier']['tmp_name'];
foreach($_FILES as $fichier)
{
if ($fichier["name"]!="")
{

{$url="/images/".$_POST["nom"]."/".$fichier["name"]."";

$sql2= "insert into photos (Soirée,url_photo) values ('".$_POST["nom"]."','".$url."')";




$result=mysql_query($sql2);
if ($result==TRUE)
{
echo" <p> lien des photos ajoutées avec succes</p>";
}
else
{
echo"<p> $sql".mysql_error()."</p>";
}
}


//$destination = "fichiers/".$fichier['name']['tmp_name'];

//if (is_uploaded_file($fichier['name']['tmp_name'])) {

//$upload = move_uploaded_file($fichier['name']['tmp_name'], $destination) or die("impossible de déplacer le fichier"); }


}
}
?>

</body>
</html>





voila tous le code javascript :


var nbrFichiers = 0;

function init()
{
//Création d'un premier input
creerInput();
}

//Fonction renvoyant le nom d'un fichier à partir de son chemin complet
function getFileName(fileName)
{
if (fileName != "") {

if (fileName.match(/^(\\\\|.:)/)) {
var temp = new Array();
temp = fileName.split("\\");
var len = temp.length;
fileName = temp[len-1];
} else {
temp = fileName.split("/");
var len = temp.length;
if(len>0)
fileName = temp[len-1];
}
}
return fileName;
}

function creerInput()
{
//Création de l'élément input
var input = document.createElement("input");
input.type = "file";
input.name = "fichier";
input.id= "fichier";




//Lorsqu'un fichier est choisi, on ajoute son nom à la liste
input.onchange = function() {
ajouterFichier(this);
}

//Ajout de l'input au document
$("input").appendChild(input);
}

function ajouterFichier(input)
{
if(nbrFichiers == 0)
$("fichiers").removeChild($("fichiers").firstChild);

//Création de la ligne dans la liste des fichiers à uploader
var fichier = document.createElement("p");

//Image de suppression
var image = document.createElement("img");
image.src = "images/suppr.gif";
image.alt = "supprimer";
Element.setStyle(image, {border: "0px", verticalAlign: "top"});

//Lien pour supprimer
var lnk = document.createElement("a");
lnk.href= "#";
lnk.onclick = function () {
supprimerFichier(fichier, input);
}
//Ajout de l'image dans la balise de lien
lnk.appendChild(image);

//Ajout du lien à la ligne de la liste
fichier.appendChild(lnk);

//Ajout du nom du fichier
fichier.appendChild(document.createTextNode(" " + getFileName(input.value)));
Element.setStyle(fichier, {margin: "0", padding: "0"});

//Ajout de l'item à la liste
$("fichiers").appendChild(fichier);
nbrFichiers++;

//Affectation de l'attribut name de l'input
input.name = getFileName(input.value);
input.tmp_name = getFileName(input.tmp_name);

new Effect.Highlight(fichier, {startcolor: "#7fd9ff", endcolor: "#FFFFFF"});

//Création d'un nouvel input pour un nouveau fichier
Element.hide(input);
creerInput();
}

function supprimerFichier(item, input)
{
//Suppression de l'item dans la liste des fichiers à uploader
new Effect.Fade(item, {afterFinish: function () { finSuppr(item); } });

//Suppression de l'input pour que le fichier supprimé ne soit pas envoyé par le formulaire
$("input").removeChild(input);
}

function finSuppr(item)
{
$("fichiers").removeChild(item);

nbrFichiers--;
if(nbrFichiers == 0)
$("fichiers").appendChild(document.createTextNode("Aucun fichier à uploader"));
}

Configuration: Windows XP
Firefox 3.0.10

Meilleures réponses pour « Problemen recuperation de tmp_name » dans :
PHP - Récupération de données Voir PHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...
[Windows XP] Assistance / Sauvegarde / Récupération / Réparation Voir Il existe plusieurs méthodes de prévention et d'action en cas de gros pépin, préconisées dans un ordre de gravité approximativement croissant : L'assistance à distance La restauration du système La récupération automatique du système...
Installer et optimiser la console de récupération sous XP VoirLa console de récupération de Windows XP permet de réparer quelques problèmes de démarrage (le boot et le MBR). Ainsi que la vérification du disque dur en cas d'erreurs. Il est possible d'installer cette console à partir du CD original de...
[Aspirateur de pages HTML] Comment aspirer un site Web ? VoirHTTrack est un excellent aspirateur, gratuit en licence GNU GPL (libre). HTTrack permet de télécharger un site web d'Internet vers votre disque dur, en construisant récursivement tous les répertoires, récupérant html, images et fichiers du serveur...
Console de récupération Vista sur CD bootable VoirJe laisse cette adresse pour ceux qui possèdent un PC de marque, et qui cherchent une solution de dépannage en mode console pour Vista. Pour ceux qui possèdent un PC de marque avec juste un CD ou DVD de restauration "Recovery", voilà une solution...
Télécharger Smart NTFS Recovery VoirQui n’a jamais supprimé des données par mégardes de leurs disques durs sans qu’il ne puissent plus les récupérer ? Une fois que vous aviez vider votre corbeille, les données ne sont plus récupérables en théorie. Smart NTFS Recovery est...
Télécharger Recovery for Lotus Notes VoirPour votre information, Lotus Notes est un programme collaboratif permettant la gestion de projets, de courriels et des échanges d'informations autour d'une base commune. Recovery for Lotus Notes est comme son nom l'indique, un moyen de récupération...
Collection CommentÇaMarche.net