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 :

Champs photo qui ne prends pas les espaces [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut Champs photo qui ne prends pas les espaces
    Bonjour a tous.

    voila j'ai un <input type file> qui reprends le nom de la company pour me stocker le lien comme ceci /company/nomdelacompanie.extension

    cela marche si je met par exemple : Fortis
    Par contre si je met Fortis group ( donc avec un espace) cela ne marche plus.

    Si quelqu'un peut me dire comment resoudre ce bug ca serait gentil.

    Merci

    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
    // Testons si il existe un logo
    	if($_FILES['ILogo']['name'])
    	{	 
    		// Testons si le fichier logo a bien été envoyé
    		if ($_FILES['ILogo']['error'] == 0)
    		{
    			// Testons si le fichier n'est pas trop gros 1Mo max
        		if ($_FILES['ILogo']['size'] <= 1000000)
        		{
        			// Testons si l'extension est autorisée
        			$infosfichier_logo = pathinfo($_FILES['ILogo']['name']);
            		$extension_upload_logo = $infosfichier_logo['extension'];
            		$extensions_autorisees_logo = array('jpg', 'jpeg', 'gif', 'png', 'bmp');
            		if (in_array($extension_upload_logo, $extensions_autorisees_logo))
            		{
    				// On peut valider le fichier (logo) et le stocker définitivement
            		$nomlogo = "Pictures/Company/{$company_name}.{$extension_upload_logo}";
    				$resultat_logo = move_uploaded_file($_FILES['ILogo']['tmp_name'],$nomlogo);
     
    				$sql=mysql_query("INSERT INTO `company`(Company_name, Company_adress1, Company_adress2, Company_adress3, Company_adress4, Company_adress5, Company_postal, Company_city, Company_country, Company_website, Company_logo) VALUES('$company_name', '$company_adress1', '$company_adress2', '$company_adress3', '$company_adress4', '$company_adress5', '$company_postal', '$company_city', '$company_country', '$company_siteweb', '$nomlogo')");
    				$url="http://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"] . "&update_done=1";
    				echo "<meta http-equiv='refresh' content='0;url=$url'>";
    				}
    				// l'extension n'est pas autorisée pour le logo
    				else 
    				{			
    				echo '<span class="warning">Sorry. Extension of Company logo is not correct!</br>&nbsp</span>';
    				}
         		}
    			// le fichier company logo est trop gros.
    			else 
    			{
    			echo '<span class="warning">Sorry. The Company logo is too big!</br>&nbsp</span>';
    			} 
    		}
    		// Le fichier company logo na pas été bien envoyé
    		else
    		{
    		echo '<span class="warning">Sorry. There was a error for upload your Company logo.</br> try again.</br>&nbsp</span>';
    		}
    	}// il n'existe pas de logo	 
    	else
    	{

  2. #2
    Membre chevronné Avatar de beejeridou
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    Ce n'est pas un bug, les espaces ne sont pas valides dans les input "file"...
    Enfin je crois^^ (presque sur). D'ailleurs, sur Firefox 3, tu ne peux pas rentrer d'adresse toi même dans le champ texte, il t'ouvre automatiquement la fenêtre d'upload.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut
    en fait l'utilisateur charge une photo apellée nimportequoi.jpg par exemple.

    comme c'est un formulaire pour ajouter une compagnie je change le nom de la photo par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nomlogo = "Pictures/Company/{$company_name}.{$extension_upload_logo}";

    Le nom de la compagnie est par exemple : Fortis ou Fortis Group
    Ensuite j'enregistre cette valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql=mysql_query("INSERT INTO `company`( .... )

    pour ensuite récupérer la photo comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img <?php if ($donnees['Photo']=="") echo "src=Pictures/notphoto.jpg"; else echo 'src='. $donnees['Photo'] . '';?>
    mais je met un espace dans le nom de ma compagnie cela ne marche pas. car dans ma page genérée j'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src=Pictures/Company/Fortis Group.gif
    et il ne me prends pas en charge mon image.

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Remplace les espaces par des "underscore" par exemple, tout simplement.

  5. #5
    Membre chevronné Avatar de beejeridou
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Par défaut
    Tu ne peux pas mettre d'espaces dans des <img src> ^^

    Sinon ca ne passera jamais sur tous les serveurs...

  6. #6
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Si, si tu les remplaces par leur code hexa, %20

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut
    Citation Envoyé par ThomasR Voir le message
    Si, si tu les remplaces par leur code hexa, %20
    ah oui... et il y a une fonction qui permet de faire cela en php ? ou autre chose...

    merci

  8. #8
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Google : remplacement chaine php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_replace(' ','%20',$string);

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Par défaut
    Merci cela marche a présent

  10. #10
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    C'est ce que je disais... ^^ mais en remplacant par des _

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. un case qui ne prend pas les accents
    Par francky74 dans le forum Langage
    Réponses: 6
    Dernier message: 27/02/2015, 10h53
  2. [XL-2010] Somme qui ne prend pas les colonnes masqués
    Par RodKAZ dans le forum Excel
    Réponses: 1
    Dernier message: 05/03/2013, 15h27
  3. [XL-2003] champ calculé qui n'aime pas les multiplications
    Par Peanut dans le forum Excel
    Réponses: 2
    Dernier message: 26/11/2010, 12h29
  4. [Requete] qui n'affiche pas les doublons mais sur un seul champs
    Par joseph.breham dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/12/2006, 14h57
  5. Réponses: 3
    Dernier message: 26/07/2006, 20h41

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