Problème avatar

Ce topic a été résolu
Rudelle65

Rudelle65 Le 17 avril 2016 à 02:31 (Édité le 25 janvier 2019 à 17:50)

Bonjour j'ai suivit le tuto de primfx sur l'avatar 
mais l'image s'upload bien mais ne se met pas dans le base de donné
Voici mon code
  • <?php
  • session_start();
  •  
  • $bdd = new PDO('mysql:host=*******;dbname=***********', '**************', '*************');
  •  
  • if(isset($_SESSION['id'])) {
  • $requser = $bdd->prepare("SELECT * FROM membres WHERE id = ?");
  • $requser->execute(array($_SESSION['id']));
  • $user = $requser->fetch();
  •  
  • if(isset($_FILES['avatar']) AND !empty($_FILES['avatar']['name']))
  • {
  • $taillemax = 99999999999999999999999999;
  • $extensionvalides = array('jpg','jpeg','gif','png');
  • if($_FILES['avatar']['size'] <= $taillemax)
  • {
  • $extensionupload = strtolower( substr(strrchr($_FILES['avatar']['name'],'.'),1));
  • if(in_array($extensionupload,$extensionvalides))
  • {
  • $chemin = "membres/avatars/".$_SESSION['id'].".".$extensionupload;
  • $resultat = move_uploaded_file($_FILES["avatar"]["tmp_name"], $chemin);
  •  
  • if($resultat)
  • {
  • $updateavatar = $bdd->prepare('UPDATE `users` SET `avatar` = :avatar WHERE `id` = :id');
  • $updateavatar->execute(array('avatar'=> $_SESSION['id'].".".$extensionupload,'id'=> $_SESSION['id']));
  • header('Location: profil.php?id='.$_SESSION['id']);
  • }
  • else
  • {
  • $msg ="Erreur durant l'importation de votre photo de profil ";
  • }
  • }
  • else
  • {
  • $msg = "Votre photo de profil doit etre format jpg,jpeg,gif ou png";
  • }
  •  
  • }
  • }
  •  
  • if(isset($_POST['newpseudo']) AND !empty($_POST['newpseudo']) AND $_POST['newpseudo'] != $user['pseudo']) {
  • $newpseudo = htmlspecialchars($_POST['newpseudo']);
  • $insertpseudo = $bdd->prepare("UPDATE membres SET pseudo = ? WHERE id = ?");
  • $insertpseudo->execute(array($newpseudo, $_SESSION['id']));
  • header('Location: profil.php?id='.$_SESSION['id']);
  • }
  • if(isset($_POST['newmail']) AND !empty($_POST['newmail']) AND $_POST['newmail'] != $user['mail']) {
  • $newmail = htmlspecialchars($_POST['newmail']);
  • $insertmail = $bdd->prepare("UPDATE membres SET mail = ? WHERE id = ?");
  • $insertmail->execute(array($newmail, $_SESSION['id']));
  • header('Location: profil.php?id='.$_SESSION['id']);
  • }
  • if(isset($_POST['newmdp1']) AND !empty($_POST['newmdp1']) AND isset($_POST['newmdp2']) AND !empty($_POST['newmdp2'])) {
  • $mdp1 = sha1($_POST['newmdp1']);
  • $mdp2 = sha1($_POST['newmdp2']);
  • if($mdp1 == $mdp2) {
  • $insertmdp = $bdd->prepare("UPDATE membres SET motdepasse = ? WHERE id = ?");
  • $insertmdp->execute(array($mdp1, $_SESSION['id']));
  • header('Location: profil.php?id='.$_SESSION['id']);
  • } else {
  • $msg = "Vos deux mdp ne correspondent pas !";
  • }
  • }
  • ?>
  • <!DOCTYPE html>
  • <html>
  • <head>
  • <meta charset="UTF-8">
  • <title>TweetBook</title>
  • </head>
  • <body>
  • <?php include("./inc/header.php"); ?>
  • <div align="center">
  • <h2>Edition de mon profil</h2>
  • <div align="left">
  • <form method="POST" action="" class="form-signin" enctype="multipart/form-data">
  • <label>Pseudo :</label>
  • <input type="text" name="newpseudo" class="form-control" placeholder="Pseudo" value="<?php echo $user['pseudo']; ?>" /><br /><br />
  • <label>Mail :</label>
  • <input type="text" name="newmail" class="form-control" placeholder="Mail" value="<?php echo $user['mail']; ?>" /><br /><br />
  • <label>Mot de passe :</label>
  • <input type="password" name="newmdp1" class="form-control" placeholder="Mot de passe"/><br /><br />
  • <label>Confirmation - mot de passe :</label>
  • <input type="password" name="newmdp2" class="form-control" placeholder="Confirmation du mot de passe" /><br /><br />
  • <label>Avatar :</label>
  • <input type="file" name="avatar" /><br/><br/>
  • <button class="btn btn-lg btn-primary btn-block" name="formconnexion" type="submit">Edition</button>
  • </form>
  • <?php if(isset($msg)) { echo $msg; } ?>
  • </div>
  • </div>
  • <?php include("./inc/footer.php"); ?>
  • </body>
  • </html>
  • <?php
  • }
  • else {
  • header("Location: login.php");
  • }
  • ?>
  • Rudelle65

    Rudelle65 Le 17 avril 2016 à 02:33

    coucougael94

    coucougael94 Le 21 avril 2016 à 15:46

    D'habitude, on ne met dans la base de donné que le chemin de l'image, pas le chemin en brut
    Rudelle65

    Rudelle65 Le 21 avril 2016 à 16:39

    pas grave j'ai réglé le problème sa marche a merveille 😀 !!!
    niluca

    niluca Le 23 avril 2016 à 16:43

    tancraft65 tu a fait comment ,car j'ai le même problème

     
    Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte