Erreur lors de l'upload

Résolu
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   -  
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai un problème avec l'upload de document en php
Quand j'upload un petit document (Pas lourd) il s'upload sans problème mais quand je dépassé 1000 ko une erreur surgie.

Image de l'erreur :


Mon code :


<?php 

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
require_once 'config.php';

    $email_bilan = $_POST['email_bilan'];
    
    if ($_POST['date_bilan'] == "") {

        $date_j = date('d');
        $date_m = date('m');
        $date_a = date('Y');
        $dte = date('d/m/Y');
    }else{

        $date_j = "1";
        $date_m = "12";
        $date_a = $_POST['date_bilan'];
        $dte = ''.$date_j.'/'.$date_m.'/'.$date_a.'';

    }

    $id_session = $_GET['num'];

    if (is_uploaded_file($_FILES['doc_files']['tmp_name'])) {
    echo "File ". $_FILES['doc_files']['name'] ." téléchargé avec succès.\n";
    $dir = '../../../../src/bilan/';
    
    if(!is_dir($dir)){
        echo " Le répertoire de destination n'existe pas !";
        exit();
    }
    
    $name_files = $_FILES['doc_files']['name'];                         
    $date_now = '-'.date("H-i-s");
    $type_files = "." . strtolower(substr(strrchr($name_files, '.'), 1));
    $target_file = $_FILES['doc_files']['tmp_name'];                                     
    $real_name = substr($name_files, 0, -4);
    $file_name = $dir. $real_name . $date_now . $type_files; 

    if($resultat = move_uploaded_file($target_file, $file_name)){

        $insert = $bdd->prepare('INSERT INTO bilan (email_bilan , dte, date_j, date_m, date_a, files_bilan, id_session) VALUES(?,?,?,?,?,?,?)');
            $insert->execute(array(
                htmlspecialchars($email_bilan),
                htmlspecialchars($dte),
                htmlspecialchars($date_j),
                htmlspecialchars($date_m),
                htmlspecialchars($date_a),
                htmlspecialchars($real_name . $date_now . $type_files),
                htmlspecialchars($id_session)
            ));

        header('Location: ../bilan-view.php?num='.$_GET['num'].'&time='.$_GET['time'].'');
        exit();

    }else{
        echo "Erreur lors du déplacement de fichier !"; 
        exit;
    }
    
    } else {
    echo "Erreur lors de l'upload du fichier : ";
    echo "Nom du fichier : '". $_FILES['doc_files']['tmp_name'] . "'.";
    }
?>



Je ne sais pas quoi faire ;')

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
moi j'examinerais
$_FILES['doc_files']['error']
, puis réagirais en fonction de ceci: https://www.php.net/manual/fr/features.file-upload.errors.php
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour.
Il faut modifier les variables qui permettent d'augmenter la taille autorisée pour l'upload des fichiers.
0
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   3
 
Je n'est pas mit en place de variable qui limite la taille des doc a l'upload
J'imagine que c'est sur mon serveur que je dois le faire mais ou trouver le doc de configuration
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention  
 
Il te suffit de chercher sur internet avec les mots clés php max upload file size... Pour trouver des milliers de discussions, tutorills ,... À ce sujet
0
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   3 > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
Justement j'ai regardé sur internet mais il ne précise pas ou trouver le doc de configuration, j'ai un plesk pour mon serveur mais quand je cherche dans PHP settings il y a rien en rapport avec la taille
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention  
 
Tu peux faire les modifications dans le fichier php.ini
Si tu n'y a pas accès, tu peux faire les modifications dans le fichier .htaccess

Si tu ne sais pas comment faire, faut voir avec le support de ton hébergeur.
0
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   3 > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
J'ai regardé avec le support mais il m'ont dit que le serveur et dédié root et que pour modifier la taille d'upload il faut passé par un script via le ssh.
J'ai regardé sur internet mais j'ai peur de faire nimporte quoi ;')

Je n'est pas les perms pour le .htaccess et le fichier php.ini n'existe pas.
0
ScreamFR Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   3
 
J'ai trouver la solution, j'ai augmenter le upload_max_filesize via SSH
0