IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Insérer un ou plusieurs fichiers php/sql/html


Sujet :

PHP & Base de données

  1. #21
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Citation Envoyé par tiph3164 Voir le message
    mais je n'arrive pas toujours à enregistrer les données du formulaire.
    Si tu utilises MySQL, "type" est un nom réservé comme j'ai tenté de l'expliquer dans mon post précédent...
    Tu dois alors utiliser les quotes inversées pour l'intégrer dans la reqûete, comme ceci par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql="INSERT INTO table1  (`type`,...) VALUES(:type,...)";
    De retour parmis vous après 10 ans!!

  2. #22
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup, mais à ce niveau là je n'ai pas d'erreur et j'arrive à enregistrer, (enr.php)

    C'est surtout si je rajoute le code qui enregistre les fichiers, que je mets sur la même page (enr.php) où j'enregistre les autres données (VARCHAR, INT...).
    Soit j'arrive à enregistrer les fichiers, soit j'arrive à enregistrer les données, mais pas les deux en même temps

  3. #23
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Bonjour.
    C'est un peu bizarre que l'une ou l'autre partie de ton dev fonctionne mais pas les deux ensemble...
    Je sais pas quoi te dire
    Je vais voir si j'ai du temps aujourd'hui pour te faire un exemple fonctionnel...
    De ton côté averti mois si tu trouves quelque chose. Bon courage!
    De retour parmis vous après 10 ans!!

  4. #24
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci infiniment !

    Je teste encore, cela ne fonctionne toujours pas, je me demande si je n'ai pas un problème de position du code, en plus, quand je teste sur EasyPHP, je n'ai pas d'erreur ... (je n'ai pas Linux )

    Encore merci ^^

  5. #25
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    J'ai décidé de séparer le formulaire des fichiers à uploader. J'arrive à enregistrer les fichiers, mais j'ai besoin que cela s'enregistre également dans la table dans PhpMyAdmin, alors j'ai créé une table avec une clé primaire et une clé étrangère pour relier les deux tables. Mais je n'arrive toujours pas à enregistrer dans PhpMyAdmin.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
     
    <?php
     
    include "./inclusion/bandeau1.inc";
    //affichage des erreurs php
     
    //connexion à la BDD
    require_once 'cnxBDD.php';
     
    $dossier_editer = 'img/editer/';
    $editer_fichier = basename($_FILES['editer_fichier']['name']);
    $taille_editer_fichier= 10000000;
    $taille_editer = filesize($_FILES['editer_fichier']['tmp_name']);
    $extensions_editer = array('.docx', '.pdf');
    $extension_editer = strrchr($_FILES['editer_fichier']['name'], '.'); 
     
     
     
    $dossier_pdf = 'img/pdf/';
    $pdf = basename($_FILES['pdf']['name']);
    $taille_pdf_fichier= 10000000;
    $taille_pdf = filesize($_FILES['pdf']['tmp_name']);
    $extensions_pdf = array('.docx', '.pdf');
    $extension_pdf= strrchr($_FILES['pdf']['name'], '.'); 
    //Début des vérifications de sécurité...
     
     
     
    $dossier_img = 'img/image_acro/';
    $image_acro = basename($_FILES['image_acro']['name']);
    $taille_image_fichier= 10000000;
    $taille_img = filesize($_FILES['image_jpg']['tmp_name']);
    $extensions_img= array('.png', '.gif', '.jpg', '.jpeg');
    $extension_img= strrchr($_FILES['image_jpg']['name'], '.'); 
    //Début des vérifications de sécurité...
     
     
     
     
     
     
    //Début des vérifications de sécurité...
    if(!in_array($extension_editer, $extensions_editer)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Vous devez changer le type de fichier, je ne prends que les fichiers docx, et pdf pour EDITER';
    }
    if($taille_editer>$taille_editer_fichier)
    {
         $erreur = 'Le fichier est trop gros...';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $editer_fichier = strtr($editer_fichier, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $editer_fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $editer_fichier);
         if(move_uploaded_file($_FILES['editer_fichier']['tmp_name'], $dossier_editer. $editer_fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès le fichier EDITER !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
     
     
     
    if(!in_array($extension_pdf, $extensions_pdf)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Vous devez uploader un fichier de type pdf ou docx...';
    }
    if($taille_pdf>$taille_pdf_fichier)
    {
         $erreur = 'Le fichier est trop gros...';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $pdf= strtr($pdf, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $pdf= preg_replace('/([^.a-z0-9]+)/i', '-', $pdf);
         if(move_uploaded_file($_FILES['pdf']['tmp_name'], $dossier_pdf . $pdf)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès le fichier transcription PDF !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
     
     
     
    if(!in_array($extension_img, $extensions_img)) //Si l'extension n'est pas dans le tableau
    {
         $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg IMAGE';
    }
    if($taille_img>$taille_image_fichier)
    {
         $erreur = 'Le fichier est trop gros...';
    }
    if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
    {
         //On formate le nom du fichier ici...
         $image_jpg= strtr($image_jpg, 
              'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
              'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
         $image_acro= preg_replace('/([^.a-z0-9]+)/i', '-', $image_acro);
         if(move_uploaded_file($_FILES['image_jpg']['tmp_name'], $dossier_img. $image_jpg)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
         {
              echo 'Upload effectué avec succès IMAGE !';
         }
         else //Sinon (la fonction renvoie FALSE).
         {
              echo 'Echec de l\'upload !';
         }
    }
    else
    {
         echo $erreur;
    }
     
    $sql = "INSERT INTO fichiers(`editer_fichier`,`taille_editer_fichier`,`extension_edition`,`pdf`,`taille_pdf`,`extension_pdf`,`image_jpg`,`taille_img`,`extension_img`) VALUES (?,?,?,?,?,?,?,?,?)";
    try {
    	$req = $bdd->prepare($sql);
    	$req->execute();
    	echo 'Upload effectué avec succès !';
    } catch(Exception $e) {
    	echo '<pre><br>Erreur dans la requete <br/>'.$e->getMessage().'<br/>';
    }
    //exécution de la requete avec try/catch
    ?>
    Dans PhpMyAdmin j'ai
    - id_fichier (auto increment)
    - id_formulaire (primaire--clé étrangère)
    - editer_fichier
    - taille_editer_fichier
    - extension_edition
    - pdf
    - taille_pdf
    - extension_pdf
    - image_jpg
    - taille_img
    - extension_img

    Je pense que je ne suis pas loin du but, mais je ne vois pas :/

  6. #26
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il n'y a pas de valeurs dans ton execute().

    Pense à activer les erreurs PDO quand tu développes.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #27
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci pour l'aide,

    J'ai essayé autrement, mais je n'arrive toujours pas à enregistrer dans ma base de données, ni dans les dossiers ... :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
     
     
    require_once 'cnxBDD.php';
     
    $image = basename($_FILES['image']['name']);
    $editer = basename($_FILES['editer_fichier']['name']);
    $pdf = basename($_FILES['pdf']['name']);
     
     
    $dossier1 = '/image/';
    $dossier2 = '/editer/';
    $dossier3 = '/pdf/';
     
    $extensions1 = array('.png', '.gif', '.jpg', '.jpeg');
    $extension1 = strrchr($_FILES['image']['name'], '.');
    $extensions2 = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.docx');
    $extension2 = strrchr($_FILES['editer_fichier']['name'], '.');
    $extensions3 = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.docx');
    $extension3 = strrchr($_FILES['pdf']['name'], '.');
     
    if (!in_array($extension1, $extensions1))
     
    {
    	$erreur1 = 'Vous devez uploader un fichier de type png, gif, jpg ou jpeg...';
    }
    if (!in_array($extension2, $extensions2))
     
    {
    	$erreur2 = 'Vous devez uploader un fichier de type png, gif, jpg, docx, pdf, ou jpeg...';
    }
    if (!in_array($extension3, $extensions3))
     
    {
    	$erreur3 = 'Vous devez uploader un fichier de type png, gif, jpg, docx, pdf ou jpeg...';
    }
     
     
    if (!isset($erreur1))
    {
     
    	$fichier1 = strtr($fichier1, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    	$fichier1 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier1);
    	if (move_uploaded_file($_FILES['image']['tmp_name'], $dossier1 . $fichier1))
     
    	{
    		if (!isset($erreur2))
    		{
     
    			$fichier2 = strtr($fichier2, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    			$fichier2 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier2);
    			if (move_uploaded_file($_FILES['editer_fichier']['tmp_name'], $dossier2 . $fichier2))
     
    			{
    				if (!isset($erreur3))
    				{
     
    					$fichier3 = strtr($fichier3, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    					$fichier3 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier3);
    					if (move_uploaded_file($_FILES['pdf']['tmp_name'], $dossier3 . $fichier3))
     
    					{
    						$req = $bdd -> prepare('INSERT INTO fichiers_telecharges (image,editer_fichier,pdf) VALUES(:image,:editer_fichier,:pdf)');
    						$req -> execute(array($fichier1, $fichier2, $fichier3));
    						$req -> closeCursor();
    					}
    				}
    			} else {
     
    				echo 'Echec de l\'upload !';
    			}
    		} else {
    			echo $erreur1;
    			echo $erreur2;
    			echo $erreur3;
     
    		}
    	}
    }
    Aidez-moi s'il vous plaît

  8. #28
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il manque le nom de tes paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req -> execute(array(':image'=>$fichier1, ':editer_fichier'=>$fichier2, ':pdf'=>$fichier3));
    Et toujours pareil, active les erreurs PDO.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #29
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci pour l'astuce, j'ai rajouté un try{}catch, je n'ai pas d'erreur qui s'affichent, et je n'arrive toujours pas à remplir ma table ni les dossiers :/

  10. #30
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Le try/catch ne sert à rien pour debuguer : il sert à traiter poliment une erreur de type exception.
    Ici on peut recevoir l'exception en pleine figure, c'est même ce qu'on cherche.
    Il faut activer les erreurs PDO sur ta connexion.

    Est-ce que tu as fais le debugage minimum ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    echo 'avant le move<br/>';
    if (move_uploaded_file($_FILES['pdf']['tmp_name'], $dossier3 . $fichier3))
     
    					{
                                            echo 'dans le move<br/>';
    						$req = $bdd -> prepare('INSERT INTO fichiers_telecharges (image,editer_fichier,pdf) VALUES(:image,:editer_fichier,:pdf)');
                                                     var_dump($req);
    						$req -> execute(array($fichier1, $fichier2, $fichier3));
    						$req -> closeCursor();
    					}
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #31
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Merci,

    Oui et je n'ai rien qui s'affiche

  12. #32
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il faut faire pareil en remontant dans le code pour suivre le déroulement et voir quelle étape arrête le traitement.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  13. #33
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    C'est ce que j'ai fait, pourtant la connection à la base fonctionne très bien sur l'autre formulaire. Et avec le premier code, j'arrivais à enregistrer les fichiers mais pas dans PhpMyAdmin.

    Je ne comprends pas du tout ... je suis perdue ...

  14. #34
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu l'as fais alors tu sais a quelle étape ça bloque non ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #35
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    non je n'ai rien qui s'affiche

  16. #36
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu mets un echo 'toto';en ligne 2 il ne s'affiche pas ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  17. #37
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Si toto s'affiche
    du coup j'ai testé j'ai mis avant le , ça s'affiche mais à l'intérieur du move et avant le move_uploaded_file, rien ne s'affiche

  18. #38
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Pourquoi tu arrêtes ton debugage là ?
    Tu sais maintenant que $erreur1 est activée, il faut donc regarder ce qui se passe pendant le contrôle de l'extension.
    Que vaut $_FILES['image']['name'] pour commencer.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  19. #39
    Candidat au Club Avatar de tiph3164
    Femme Profil pro
    ingé
    Inscrit en
    Février 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : ingé
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2017
    Messages : 33
    Points : 4
    Points
    4
    Par défaut
    Je suis novice en php et je ne vois pas comment faire, je ne sais pas si j'ai bien expliqué où j'ai mis les echo :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
     
    <?php
     
    include "./inclusion/bandeau1.inc";
     
    require_once 'cnxBDD.php';
     
     
    $image = basename($_FILES['image']['name']);
    $editer = basename($_FILES['editer_fichier']['name']);
    $pdf = basename($_FILES['pdf']['name']);
     
    $dossier1 = '/image/';
    $dossier2 = '/editer/';
    $dossier3 = '/pdf/';
     
    $extensions1 = array('.png', '.gif', '.jpg', '.jpeg');
    $extension1 = strrchr($_FILES['image']['name'], '.');
    $extensions2 = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.docx');
    $extension2 = strrchr($_FILES['editer_fichier']['name'], '.');
    $extensions3 = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.docx');
    $extension3 = strrchr($_FILES['pdf']['name'], '.');
     
    if (!in_array($extension1, $extensions1))
     
    {
    	$erreur1 = 'Vous devez uploader un fichier de type png, gif, jpg ou jpeg...';
    }
    if (!in_array($extension2, $extensions2))
     
    {
    	$erreur2 = 'Vous devez uploader un fichier de type png, gif, jpg ou jpeg...';
    }
    if (!in_array($extension3, $extensions3))
     
    {
    	$erreur3 = 'Vous devez uploader un fichier de type png, gif, jpg ou jpeg...';
    }
     
    echo 'avant le move<br/>';
    if (!isset($erreur1))
    {
    	echo 'dans le move<br/>';
     
    	$fichier1 = strtr($fichier1, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    	$fichier1 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier1);
    	echo 'avant le move<br/>';
    	if (move_uploaded_file($_FILES['image']['tmp_name'], $dossier1 . $fichier1))
     
    	{
    		echo 'dans le move<br/>';
    		if (!isset($erreur2))
    		{
    			echo 'dans le move<br/>';
     
    			$fichier2 = strtr($fichier2, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    			$fichier2 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier2);
    			echo 'avant le move<br/>';
    			if (move_uploaded_file($_FILES['editer_fichier']['tmp_name'], $dossier2 . $fichier2))
     
     
    			{
    				echo 'dans le move<br/>';
    				if (!isset($erreur3))
    				{
    					echo 'dans le move<br/>';
     
    					$fichier3 = strtr($fichier3, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    					$fichier3 = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier3);
    					echo 'avant le move<br/>';
    					if (move_uploaded_file($_FILES['pdf']['tmp_name'], $dossier3 . $fichier3))
     
    					{
    						echo 'dans le move<br/>';
    						$sql = 'INSERT INTO `fichiers` (`ID_a`,`image`,`editer_fichier`,`pdf`) VALUES (:ID_a,:image,:editer_fichier,:pdf)';
    						//insère le nom du fichier dans ta table
    						try {
    							$req = $bdd -> prepare($sql);
    							$req -> execute(array(':ID_a' => $ID_a, ':image' => $fichier1, ':editer_fichier' => $fichier2, ':pdf' => $fichier3));
    							var_dump($req);
    							$req -> closeCursor();
    						} catch(Exception $e) {
    							echo '<pre><br>Erreur dans la requete <br/>' . $e -> getMessage() . '<br/>';
    						}
    					}
    				} else {
     
    					echo 'Echec de l\'upload !';
    				}
    			} else {
    				echo $erreur1;
    				echo $erreur2;
    				echo $erreur3;
     
    			}
    		}
    	}
    }
    ?>

  20. #40
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu sais bien afficher une variable quand même ? Ici avec var_dump plutôt que echo.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $extension1 = strrchr($_FILES['image']['name'], '.');
    var_dump($_FILES['image']['name']);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [Stage] 2-3moi Développeur en PHP/SQL/HTML/CSS/JavaScript/Java/AS3
    Par Ckpierre dans le forum Demandes
    Réponses: 0
    Dernier message: 29/06/2011, 11h41
  2. Plusieurs fichiers php.ini
    Par michelw dans le forum Apache
    Réponses: 2
    Dernier message: 11/10/2009, 15h31
  3. Submit sur plusieurs formulaires PHP et HTML
    Par Gareth dans le forum Langage
    Réponses: 7
    Dernier message: 26/05/2009, 12h09
  4. Convertir plusieurs fichiers word en html
    Par Srh00 dans le forum Langage
    Réponses: 2
    Dernier message: 17/04/2008, 16h28
  5. [Wamp] Plusieurs fichiers php.ini
    Par adel.87 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 02/03/2008, 19h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo