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 :

Insérer une image envoyée dans ma base de données


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut Insérer une image envoyée dans ma base de données
    Bonsoir, voilà je vient encore vous embêter ! ...

    J'essaye de mettre des images envoyé par les utilisateur dans ma base de donnée, mes j'obtiens une erreurs :
    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
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title>Concours</title>
    <link rel="stylesheet" type="text/css" href="style.css">
        </head>
        <body>
         <header>
          <?php include("header.php"); ?>
         </header>
     
     
    <?php
    if(!isset($_POST['pseudo'])) {
        echo '<div id = "inscription">
                <form action = "#" method = "post" enctype="multipart/form-data">
                    <p style="text-align:center" >Tu est sur le point de tinscrire au concours maillots de bain !</br>
                    <strong style="color:red" >ATTENTION : Tous donnés saisaie sur se formulaire ne pourrat être remodifié après la validation.</strong></p>
                    <p><label for = "pseudo">Pseudo : </label><input type = "text" name = "pseudo" id = "pseudo" required/></p>
                    <p><label for = "email">Adresse email :</label><input type = "text" name = "email" id = "email" required/></p></texterea>
                    <p><label for=  "adresse">Saisissez votre adresse postal (qui permettera la réception des gains):</label><br />
                    <textarea name="adresse" id="ameliorer"></textarea required></p>
                    <p>Choisi la photo pour ce concours :</p>
     
            <p><label for= "photo">
                    Choissisez votre photo :<br /></label>
                    <input type="file" name="photo" id="pseudo" /><br />
                    <input type="submit" value="Envoyer mon inscription" />
            </p>
         
                <p style="text-align: center; color:red" >Attention ! Une foit validez vous ne pourrez pu revenir en arrière !</p>
            </form>
        </div>';
    }
     
        else {
            $enreg = fopen("concours_maillots.txt","a+");
                fwrite($enreg, $_POST['pseudo']."|".$_POST['email']."|".$_POST['adresse']."|".$_POST['photo']."\n");
            fclose($enreg);
            echo '<p>Bravo ' . $_POST['pseudo'] . ' ! tu fais partie du concours !</p></a>';
        }
     
     
    ?>
     
     
    <?php
    // Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
    if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
    {
            // Testons si le fichier n'est pas trop gros
            if ($_FILES['monfichier']['size'] <= 1000000)
            {
                    // Testons si l'extension est autorisée
                    $infosfichier = pathinfo($_FILES['monfichier']['name']);
                    $extension_upload = $infosfichier['extension'];
                    $extensions_autorisees = array('jpg', 'jpeg','png');
                    if (in_array($extension_upload, $extensions_autorisees))
                    {
                            // On peut valider le fichier et le stocker définitivement
                            move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . uniqid().'.'.$extension_upload);
                            echo "L'envoi a bien été effectué !";
                    }
            }
    }
    ?>
     
     
     
          </body>
         </html>
    voici l'erreur :
    Notice: Undefined index: photo in C:\wamp\www\vsite\inscriptionconcoursmaillotsdebain.php on line 40
    Call Stack
    # Time Memory Function Location
    1 0.0008 261432 {main}( ) ..\inscriptionconcoursmaillotsdebain.php:0

  2. #2
    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
    "photo" est un upload donc $_FILES['photo']['name'] si tu veux le nom du fichier.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut
    Merci ça fonctionne mais je n'est pas le nom modifié ?j'ai le nom de mon image dans mes documents mais je n'est pas le nom de mon uploads ?

  4. #4
    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
    C'est quoi "le nom de ton upload" ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut
    le nom de mon image change a chaque fois que je rentre une image dans mes upload garde a cette fonction :

    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . uniqid().'.'.$extension_upload);

    Et moi dans ma BDD je n'est pas se nom là mais le nom du fichier enregistrer dans mon pc !

    pc = ours.jpg
    uploads =51defc9830173


    BDD=ours

  6. #6
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $nom_fichier = uniqid().'.'.$extension_upload;
    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . $nom_fichier);
    et tu enregistres $nom_fichier.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut
    Avec ce code ca ne fonctionne pu il ne m'enregistre même pas les uploads ;s

  8. #8
    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 as du changer autre chose quelque part car cette modification est juste un jeu d'écriture, il n'y a rien qui change.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut
    Non je n'est rien modifié :
    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
     
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title>Concours</title>
    <link rel="stylesheet" type="text/css" href="style.css">
        </head>
        <body>
    	 <header> 
    	  <?php include("header.php"); ?>
    	 </header>
    <?php
    if(!isset($_POST['pseudo'])) {
     	echo '<div id = "inscription">
    			<form action = "#.php" method = "post" enctype="multipart/form-data">
    				<p style="text-align:center" >Tu est sur le point de tinscrire au concours des plus beau yeux !</br>
    				<strong style="color:red" >ATTENTION : Tous donnés saisaie sur se formulaire ne pourrat être remodifié après la validation.</strong></p>
    				<p><label for = "pseudo">Pseudo : </label><input type = "text" name = "pseudo" id = "pseudo" required/></p>
    				<p><label for = "email">Adresse email :</label><input type = "text" name = "email" id = "email" required/></p></texterea>
    				<p><label for=  "adresse">Saisissez votre adresse postal (qui permettera la réception des gains):</label><br />
    				<textarea name="adresse" id="ameliorer"></textarea required></p>
    				<p>Choisi la photo pour ce concours :</p>
    
            <p>
                    Choissisez votre photo :<br />
                    <input type="file" name="monfichier" /><br />
                    <input type="submit" value="Envoyer mon inscription" />
            </p>
    	
    			<p style="text-align: center; color:red" >Attention ! Une foit validez vous ne pourrez pu revenir en arrière !</p>
    		</form>
    	</div>';
    } 
     
        else {
     		$enreg = fopen("concours_yeux.txt","a+");
    		fwrite($enreg, $_POST['pseudo']."|".$_POST['email']."|". $_POST['adresse']."\n");  
    		fclose($enreg);
    		echo '<p>Bravo ' . $_POST['pseudo'] . ' ! tu fais partie du concours !</p></a>';
    	}
     
     
    ?>
     
    <?php
    // Testons si le fichier a bien été envoyé et s'il n'y a pas d'erreur
    if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
    {
            // Testons si le fichier n'est pas trop gros
            if ($_FILES['monfichier']['size'] <= 1000000)
            {
                    // Testons si l'extension est autorisée
                    $infosfichier = pathinfo($_FILES['monfichier']['name']);
                    $extension_upload = $infosfichier['extension'];
                    $extensions_autorisees = array('jpg', 'jpeg','png');
                    if (in_array($extension_upload, $extensions_autorisees))
                    {
                            // On peut valider le fichier et le stocker définitivement
                             $nom_fichier = uniqid().'.'.$extension_upload;
    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . $nom_fichier);
     
                            echo "L'envoi a bien été effectué !";
                    }
            }
    }
    ?>
     
     
     
    	  </body>
    	 </html>

  10. #10
    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
    Et si tu remets comme avant ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 38
    Points : 8
    Points
    8
    Par défaut
    Comme avant mes photo vont bien dans mon dossier uploads et rentre le nom dans ma BDD mais le nom sur le pc et non le nom modifié

  12. #12
    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 ça fonctionne comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . uniqid().'.'.$extension_upload);
    Mais pas comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      $nom_fichier = uniqid().'.'.$extension_upload;
    move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads_maillots/' . $nom_fichier);
    Je ne peux plus rien faire pour toi.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Afficher une image stockée dans la Base de données
    Par SaladinDev dans le forum Ext JS / Sencha
    Réponses: 3
    Dernier message: 08/02/2012, 18h15
  2. [PDF] Insérer une image issue de la base de données
    Par lamiae2 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 10/05/2009, 18h28
  3. insérer une image jpeg dans une base sql serveur
    Par hocine77 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 04/10/2007, 15h30
  4. [CR] insérer une image paramétrer dans une étiquette
    Par yoyothebest dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 22/08/2004, 11h58

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