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

Langage PHP Discussion :

Caractères accentués


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2017
    Messages : 1
    Par défaut Caractères accentués
    Bonjour,

    J'ai un très léger soucis. j’enregistre des images avec un formulaire mais quand il y a des accents le nom de l'image est mal enregistré. Aidez-moi svp.

    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
    <?php 
    	if (!empty($_POST)) {
    		$id = 3;
    	$nomPhoto = $id.'-'.$_POST['name'].'-'.$_POST['marque'];
     
    if (isset($_FILES['photo1']) AND $_FILES['photo1']['error'] == 0)
                        {
                            if ($_FILES['photo1']['size'] <= 1000000)
                            {
                                $infosfichier = pathinfo($_FILES['photo1']['name']);
                                $extension_upload = $infosfichier['extension'];
                                $extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png');
                                if (in_array($extension_upload, $extensions_autorisees))
                                {
                                    $photo1 = $nomPhoto.'-photo-1.'.$extension_upload;
     
                                    /*\App::getInstance()->getTable('photo')->create(['product_id '=>$id, "name"=>$photo1]);*/
                                    move_uploaded_file($_FILES['photo1']['tmp_name'], 'img/' . utf8_encode($photo1));
                                }
                            }
                        }
    	}
    ?>
     
    <!DOCTYPE html>
    <html>
    <head>
    	<title>aaaaaaaaaaa</title>
        <meta charset="utf-8">
    </head>
    <body>
    	<form method="post" action="#" enctype="multipart/form-data">
    		<input type="text" class="form-control" name="name" placeholder="Nom du produit">
    		<input type="text" class="form-control" name="marque" placeholder="Marque du produit">
    		<input type="file" name="photo1" class="form-control">
            <br><br>
                    <button class="btn btn-success">Enrégistrer</button>
    	</form>
     
    </body>
    </html>

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    utf8_encode convertit uniquement un encodage ISO-8859-1 en UTF-8. La page Web qui contient ton formulaire est encodé en ISO-8859-1 ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre extrêmement actif
    Avatar de Sodium
    Femme Profil pro
    Développeuse web
    Inscrit en
    Avril 2014
    Messages
    2 324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeuse web

    Informations forums :
    Inscription : Avril 2014
    Messages : 2 324
    Billets dans le blog
    1
    Par défaut
    Avec ou sans accents, enregistrer les fichiers avec leur nom original n'est pas une bonne idée (que se passe-t-il par exemple dans ton code si un autre fichier avec le même nom est uploadé ?).
    Il vaut mieux créer une entrée en base de donnée avec id, extension et nom original du fichier, l'enregistrer sur ton serveur (de préférence dans un répertoire non accessible directement via http) sous le nom {id}.{extension}, puis créer un script qui aille le piocher et le serve à l'utilisateur en lui redonnant son nom original.

Discussions similaires

  1. Caractères accentués avec <html:link>
    Par papysam dans le forum Struts 1
    Réponses: 5
    Dernier message: 25/05/2007, 15h18
  2. Chaines avec caractères accentués dans interbase
    Par Tsimplice dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2004, 17h12
  3. Chaînes avec des caractères accentués dans Interbase
    Par Invité dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/03/2004, 22h39
  4. [PostgreSQL] Les caractères accentués ?
    Par yacomor dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/02/2003, 16h30
  5. insérer des caractères accentués INFORMIX/JDBC
    Par donde dans le forum Informix
    Réponses: 2
    Dernier message: 19/11/2002, 20h02

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