Programation d'un uploadeur
Résolu
simonfr
Messages postés
124
Date d'inscription
Statut
Membre
Dernière intervention
-
simonfr Messages postés 124 Date d'inscription Statut Membre Dernière intervention -
simonfr Messages postés 124 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en pleine création d'un uploadeur, mais mon uploadeur ne veut pas uploader les gros fichiers comment faire tenez je vous donne le code PHP qui est en 3 fichiers :
index.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Mini upload</title>
<script type="text/javascript">
var CS = {};
CS.UploadAjax = function(){}
CS.UploadAjax.callBack = function(message){
document.getElementById('messageCallBack').innerHTML = message;
document.getElementById('btn').value = 'Envoyer';
document.getElementById('btn').disabled = false;
document.getElementById('file').value = '';
refresh_listing();
}
function envoyer(){
document.getElementById('myform').submit();
document.getElementById('btn').disabled = true;
document.getElementById('btn').value = 'Patientez...';
document.getElementById('messageCallBack').innerHTML = "<b><i>Chargement en cours</i></b><br/><img src='chargement.gif' />";
}
function refresh_listing(){
var xhr_object = null;
var position = 'listing';
if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
else if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
xhr_object.open("GET", "listing.php", true);
xhr_object.onreadystatechange = function(){
if ( xhr_object.readyState == 4 )
{
document.getElementById(position).innerHTML = xhr_object.responseText;
}
}
xhr_object.send(null);
}
</script>
</head>
<body>
<table>
<tr>
<td width="250px" valign="top">Voici les fichiers deja presents :
<div id="listing">
<?php include("listing.php"); ?>
</div>
</td>
<td valign="top">
<table>
<tr>
<td>
</td>
</tr>
<tr>
<td align="center">
<form id="myform" action="upload.php" enctype="multipart/form-data" method="post" target="hiddeniframe">
<input type="file" id="file" name="file" />
<input type="button" id="btn" value="Envoyer" onClick="envoyer()"/>
<div id="messageCallBack"></div>
</form>
<iframe name="hiddeniframe" style="display:none;" src="about:blank"></iframe>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
upload.php :
<?php
$extensions = array('.png', '.gif', '.jpg', '.jpeg', '.exe', '.avi');
$extension = strrchr($_FILES['file']['name'], '.');
if(!in_array(strtolower($extension), $extensions))
{
$data['message'] = 'Vous devez uploader un fichier de type <b>png, gif, jpg, jpeg, exe, avi.</b>';
}
if(filesize($_FILES['file']['tmp_name'])>999999999999999999999999)
{
$erreur = '<b>Le fichier est trop gros...</b>';
}
if(!isset($data['message']))
{
$fichier = strtr($fichier,
'Àà Ã'ÃfÃ"Ã...Ã#Ã^Ã0/00ÃSÃ<ÃOEà ÃZà Ã'Ã"Ã"Ã*Ã-Ã(TM)ÃsÃ>Ãoeà à áâãäåçèéêëìÃîïðòóÃ'õöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['file']['tmp_name'], 'upload/' . basename($_FILES['file']['name'])))
{
$data['message'] = '<b>Upload de <i>'.$_FILES['file']['name'].'</i> effectué avec succés !</b>';
}
else
{
$data['message'] = '<b>Echec de l\'upload !</b>';
}
}
else
{
echo $erreur;
}
$data['page'] =
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript">
window.parent.CS.UploadAjax.callBack("{message}");
</script>
</head>
<body>
</body>
</html>';
echo preg_replace('#\{([a-z0-9\-_]*?)\}#Ssie', '( ( isset($data[\'\1\']) ) ? $data[\'\1\'] : \'\' );', $data['page']);
?>
listing.php :
<?php
$dirname = './upload/';
$dir = opendir($dirname);
while($file = readdir($dir)) {
if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
echo '<a href="'.$dirname.$file.'" target="_blank">'.$file.'</a><br/>';
}
}
closedir($dir);
?>
Je suis en pleine création d'un uploadeur, mais mon uploadeur ne veut pas uploader les gros fichiers comment faire tenez je vous donne le code PHP qui est en 3 fichiers :
index.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Mini upload</title>
<script type="text/javascript">
var CS = {};
CS.UploadAjax = function(){}
CS.UploadAjax.callBack = function(message){
document.getElementById('messageCallBack').innerHTML = message;
document.getElementById('btn').value = 'Envoyer';
document.getElementById('btn').disabled = false;
document.getElementById('file').value = '';
refresh_listing();
}
function envoyer(){
document.getElementById('myform').submit();
document.getElementById('btn').disabled = true;
document.getElementById('btn').value = 'Patientez...';
document.getElementById('messageCallBack').innerHTML = "<b><i>Chargement en cours</i></b><br/><img src='chargement.gif' />";
}
function refresh_listing(){
var xhr_object = null;
var position = 'listing';
if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
else if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
xhr_object.open("GET", "listing.php", true);
xhr_object.onreadystatechange = function(){
if ( xhr_object.readyState == 4 )
{
document.getElementById(position).innerHTML = xhr_object.responseText;
}
}
xhr_object.send(null);
}
</script>
</head>
<body>
<table>
<tr>
<td width="250px" valign="top">Voici les fichiers deja presents :
<div id="listing">
<?php include("listing.php"); ?>
</div>
</td>
<td valign="top">
<table>
<tr>
<td>
</td>
</tr>
<tr>
<td align="center">
<form id="myform" action="upload.php" enctype="multipart/form-data" method="post" target="hiddeniframe">
<input type="file" id="file" name="file" />
<input type="button" id="btn" value="Envoyer" onClick="envoyer()"/>
<div id="messageCallBack"></div>
</form>
<iframe name="hiddeniframe" style="display:none;" src="about:blank"></iframe>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
upload.php :
<?php
$extensions = array('.png', '.gif', '.jpg', '.jpeg', '.exe', '.avi');
$extension = strrchr($_FILES['file']['name'], '.');
if(!in_array(strtolower($extension), $extensions))
{
$data['message'] = 'Vous devez uploader un fichier de type <b>png, gif, jpg, jpeg, exe, avi.</b>';
}
if(filesize($_FILES['file']['tmp_name'])>999999999999999999999999)
{
$erreur = '<b>Le fichier est trop gros...</b>';
}
if(!isset($data['message']))
{
$fichier = strtr($fichier,
'Àà Ã'ÃfÃ"Ã...Ã#Ã^Ã0/00ÃSÃ<ÃOEà ÃZà Ã'Ã"Ã"Ã*Ã-Ã(TM)ÃsÃ>Ãoeà à áâãäåçèéêëìÃîïðòóÃ'õöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['file']['tmp_name'], 'upload/' . basename($_FILES['file']['name'])))
{
$data['message'] = '<b>Upload de <i>'.$_FILES['file']['name'].'</i> effectué avec succés !</b>';
}
else
{
$data['message'] = '<b>Echec de l\'upload !</b>';
}
}
else
{
echo $erreur;
}
$data['page'] =
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<script type="text/javascript">
window.parent.CS.UploadAjax.callBack("{message}");
</script>
</head>
<body>
</body>
</html>';
echo preg_replace('#\{([a-z0-9\-_]*?)\}#Ssie', '( ( isset($data[\'\1\']) ) ? $data[\'\1\'] : \'\' );', $data['page']);
?>
listing.php :
<?php
$dirname = './upload/';
$dir = opendir($dirname);
while($file = readdir($dir)) {
if($file != '.' && $file != '..' && !is_dir($dirname.$file)){
echo '<a href="'.$dirname.$file.'" target="_blank">'.$file.'</a><br/>';
}
}
closedir($dir);
?>
A voir également:
- Programation d'un uploadeur
- Programation - Forum Programmation
- Programation - Forum Programmation
- Debuter en programation ✓ - Forum Programmation
- Logiciel de programation - Forum Programmation
- Programer un message sur iphone - Guide
5 réponses
Bonjour,
Sans même regarder le code..
As tu modifié la configuration du serveur pour que celui accepte les gros fichiers ?
De base php a une limite à 2 ou 3 Mo..
Adns
Sans même regarder le code..
As tu modifié la configuration du serveur pour que celui accepte les gros fichiers ?
De base php a une limite à 2 ou 3 Mo..
Adns
Non, peut tu m'aider a le configurer car je n'est configurer que upload.php pour qu'il accepte les gros fichiers
Tout dépend du serveur que tu utilise, les serveurs mutualisés ne donne que rarement la main sur la partie configuration.
Si jamais tu as la main je t'invite à lire ceci.
https://www.commentcamarche.net/faq/889-php-upload-de-fichiers#configuration-de-php-pour-permettre-l-upload
Adns
Si jamais tu as la main je t'invite à lire ceci.
https://www.commentcamarche.net/faq/889-php-upload-de-fichiers#configuration-de-php-pour-permettre-l-upload
Adns
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question