Besoin d'aide ProgressBar lors de l'upload d'un fichier.
Posté : 10 déc. 2012, 20:07
Salut à tous, j'ai un sérieux problème aujourd'hui!
Comme j'ai lancer mon projet YOUPLOAD, j'ai commencer à faire tous le script. Maintenant le problèmes c'est que je suis pas le dieux en PHP ou autres ... Je connais simplement les bases!
Mon problème: J'aimerait pouvoir quand ont clique sur le input="file" ont choisis le fichier ensuite quand ont clique sur Upload j'aimerait que en bas sa affiche un ProgressBar tous simple avec un texte exemple: 54% > 60% > 70% ...
Donc pour ceux qui peuvent m'aidez je l'ai remercie d'avance de [+] j'offre un nom de domaine à la personne qui arrive à m'aidez ( ou même re-moduler le script).
Voici le script de la <form> >
Donc il est très basique surtout pour les input submit j'ai fait sa à la légère.
Voici le code PHP tous en haut de ma page >
Si quelq'un peux me re-moduler le script en y ajoutant le progressbar etc ... JE LUI OFFRE NOM DE DOMAINE AU CHOIX! ( POUR LE PREMIER )
Merci de m'aider au plus vite!
Comme j'ai lancer mon projet YOUPLOAD, j'ai commencer à faire tous le script. Maintenant le problèmes c'est que je suis pas le dieux en PHP ou autres ... Je connais simplement les bases!
Mon problème: J'aimerait pouvoir quand ont clique sur le input="file" ont choisis le fichier ensuite quand ont clique sur Upload j'aimerait que en bas sa affiche un ProgressBar tous simple avec un texte exemple: 54% > 60% > 70% ...
Donc pour ceux qui peuvent m'aidez je l'ai remercie d'avance de [+] j'offre un nom de domaine à la personne qui arrive à m'aidez ( ou même re-moduler le script).
Voici le script de la <form> >
Code : Tout sélectionner
<form action="" method="post" onSubmit="return isUpFormOk(this)" enctype="multipart/form-data" target="result_frame">
<?php
if(count($err)>0)
{
foreach($err as $errmsg)
print "<div id='err1'>$errmsg</div>";
?>
<?
}
?>
<br>
<div class="txtbox">
<input name="upfile" style="opacity:0;float:right;" type="file" id="upfile">
</div>
<center>
<input name="submit" src="images/up.png" style="margin-top:-2px;" type="image" >
<a href="./"><img src="images/annul.png" style="margin-top:-2px;"></a>
<input name="media" type="hidden" id="media" value="upfile">
</form>
Voici le code PHP tous en haut de ma page >
Code : Tout sélectionner
<?php
require_once("include/vars.php");
require_once("include/db.php");
require_once("include/functions.php");
$qry="SELECT conf_value FROM ".$db->tb("configuration")." WHERE conf_name='AUTO_FILE_DELETE'";
$db->query($qry);
$row=$db->getrow();
if($row[0]=="Yes")
{
$now=time();
$qry="SELECT dir, file_name FROM ".$db->tb("fileinfo")." WHERE expire_time<$now";
$db->query($qry);
while($row=$db->getrow())
{
@unlink("uploads/".$row[1]."/".$row[2]);
@rmdir("uploads/".$row[1]);
}
$qry="DELETE FROM ".$db->tb("fileinfo")." WHERE expire_time<$now";
$db->query($qry);
}
$err=array();
if(count($_POST)>0)
{
$media=$_REQUEST["media"];
$upfile=$_FILES[$media]['name'];
$upfile=trim($upfile);
if(empty($upfile)) $err[]="Vous n'avez pas entrer de fichiers";
if(count($err)==0)
{
$qry="SELECT conf_value FROM ".$db->tb("configuration")." WHERE conf_name='MAX_SIZE'";
$db->query($qry);
$row=$db->getrow();
$sizelmt=((int)$row[0])*1000;
$qry="SELECT conf_value FROM ".$db->tb("configuration")." WHERE conf_name='MIME_TYPES'";
$db->query($qry);
$row=$db->getrow();
if($row[0]=="") $mimearr="";
else $mimearr=explode(",",$row[0]);
require_once("include/uploader.php");
do
{
$key=getRanID(20);
$qry="SELECT COUNT(*) FROM ".$db->tb("fileinfo")." WHERE idkey='$key'";
$db->query($qry);
$row=$db->getrow();
}while($row[0]);
do
{
$dirkey=getRanID(20);
$qry="SELECT COUNT(*) FROM ".$db->tb("fileinfo")." WHERE dir='$dirkey'";
$db->query($qry);
$row=$db->getrow();
}while($row[0]);
mkdir("uploads/$dirkey");
chmod("uploads/$dirkey",0777);
$uploader = new MediaUploader("uploads/$dirkey", $mimearr, $sizelmt);
//$uploader->setTargetFileName($row[0].".jpg");
if ($uploader->fetchMedia($media))
{
if(!$uploader->upload())
{
rmdir("uploads/$dirkey");
$err[] = $uploader->getErrors();
}
}
else
{
rmdir("uploads/$dirkey");
$err[]=sprintf("Echec du chargement '%s'", $upfile);
}
if(count($err)==0)
{
$qry="SELECT conf_optional, conf_value FROM ".$db->tb("configuration")." WHERE conf_name='MAX_TIME'";
$db->query($qry);
$row=$db->getrow();
$maxtime=$row[0];
$maxtimeval=$row[1];
$qry="SELECT conf_optional, conf_value FROM ".$db->tb("configuration")." WHERE conf_name='MAX_COUNT'";
$db->query($qry);
$row=$db->getrow();
$maxcount=$row[0];
$maxcountval=$row[1];
$qry="INSERT INTO ".$db->tb("fileinfo")."(idkey,dir,mime_type,file_name,size,upload_time,expire_time,max_dwnld,recipient,sender) VALUES('$key','$dirkey','".$uploader->getMediaType()."','".$uploader->getSavedFileName()."',".$uploader->getMediaSize().",".time().",".(time()+($maxtimeval*86400)).",".$maxcountval.",'$emailto','$emailfrom')";
$db->query($qry);
$newid=$db->get_insert_id();
$qry="SELECT conf_optional FROM ".$db->tb("configuration")." WHERE conf_name='DAILY_TRANSFER'";
$db->query($qry);
$row=$db->getrow();
if($row[0]==date("d-m-Y"))
$qry="UPDATE ".$db->tb("configuration")." SET conf_value=conf_value+".$uploader->getMediaSize()." WHERE conf_name='DAILY_TRANSFER'";
else
$qry="UPDATE ".$db->tb("configuration")." SET conf_value=".$uploader->getMediaSize().", conf_optional='".date("d-m-Y")."' WHERE conf_name='DAILY_TRANSFER'";
$db->query($qry);
//print date("Y-m-d H:i:s");
redirect("success.php?id=$newid");
}
}
}
$qry="SELECT conf_optional FROM ".$db->tb("configuration")." WHERE conf_name='MAX_SIZE'";
$db->query($qry);
$row=$db->getrow();
$maxsize=$row[0];
?>
Merci de m'aider au plus vite!