Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: ets_raphael
Ce topic a été résolu
Auteur Sujet: Identification article

ets_raphael
Membre Premium

Messages: 11

Bonjour tout le monde, c'est mon premier message dans ce forum et j'espère de tout coeur que je vais trouver ma solution Sourire 

Alors moi mon problème est que je voudrais que dans ma base de donnée lorsqu'un article est posté, celui-ci contient aussi l'id de l'utilisateur, et oui c'est tout et j'arrive pas du tout a comprendre pourquoi mon code ne marche pas :3 

Mon code est une partie du tuto sur l'espace membre, et dans mon espace membre j'ai mis la fonction pour poster un article. Je vous envoie la partie que j'ai à modifier pour que ca marche : 

session_start();

Alors moi ce que je voulais faire c'était de juste modifié la ligne 15 de la manière suivante : 
$ins = $bdd->prepare('INSERT INTO articles (titre, contenu, date_time_publication, id_utilisateur) VALUES (?, ?, NOW(), '$getid' )');
Mais rien n'y fais, pas moyen de pouvoir enregistrer mon article. Je précise que j'ai mis une case en plus nommé id_utilisateur dans ma base de donner a la différence de la video de PrimFx. 

Merci pour les personnes qui m'aideront Sourire 
Publicité

ets_raphael
Membre Premium

Messages: 11

session_start();
J'ai reposté le code a modifier une deuxième fois car il est impossible pour moi de modifié mon code d'en haut.. Désolé pour la gêne je trouve même que c'est assez bizarre :/ 

ets_raphael
Membre Premium

Messages: 11

Je donne quand même la version écrite car la bouton éditer est inaccessible en ce moment, désolé pour l'affichage : 

session_start();$bdd = new PDO('mysql:host=localhost;dbname=espace_membre', 'root', 'root');

if(isset($_GET['id']) AND $_GET['id'] > 0 ){
  $getid=intval($_GET['id']); 
  $requser=$bdd->prepare('SELECT * FROM membres WHERE id=?'); 
  $requser->execute(array($getid)); 
  $userinfo=$requser->fetch(); 
  if(isset($_POST['article_titre'], $_POST['article_contenu'])) {   
  if(!empty($_POST['article_titre']) AND !empty($_POST['article_contenu'])) {     
  $article_titre = htmlspecialchars($_POST['article_titre']);     
  $article_contenu = htmlspecialchars($_POST['article_contenu']);      if($mode_edition == 0) {        $ins = $bdd->prepare('INSERT INTO articles (titre, contenu, date_time_publication, id_utilisateur) VALUES (?, ?, NOW(), '$getid' )');        $ins->execute(array($article_titre, $article_contenu));        $lastid = $bdd->lastInsertId();        if(isset($_FILES['miniature']) AND !empty($_FILES['miniature']['name'])) {          if(exif_imagetype($_FILES['miniature']['tmp_name']) == 2) {            $chemin = 'miniatures/'.$lastid.'.jpg';            move_uploaded_file($_FILES['miniature']['tmp_name'], $chemin);          } else {            $message = 'Votre image doit être au format jpg';          }        }        $message = 'Votre article a bien été posté';      } else {        $update = $bdd->prepare('UPDATE articles SET titre = ?, contenu = ?, date_time_edition = NOW() WHERE id = ?');        $update->execute(array($article_titre, $article_contenu, $edit_id));        //header('Location: '.$edit_id);        $message = 'Votre article a bien été mis à jour !';      }    } else {      $message = 'Veuillez remplir tous les champs';    }  }

ThomasT

Messages: 8

$ins = $bdd->prepare('INSERT INTO articles (titre, contenu, date_time_publication, id_utilisateur) VALUES (?, ?, NOW(), '$getid' )');
Une grosse erreur ici Clin d'oeil
dans VALUES tu as mis
'$getid'
je te rappel qu'en php il faut mettre des points pour ajouter une variable à une autre comme ceci :
'.$getid.'
Ce qui donne :
$ins = $bdd->prepare('INSERT INTO articles (titre, contenu, date_time_publication, id_utilisateur) VALUES (?, ?, NOW(), '.$getid.' )');
Et n'oublie pas que c'est mieux de mettre des ? et de mettre le $getid dans le execute Clin d'oeil

j'espère t'avoir aidé Sourire
j'ai pas regardé tout ton code mais déjà ça devrait t'aider Clin d'oeil

ets_raphael
Membre Premium

Messages: 11

Dire que j'ai passé plus de 2h a chercher mon erreur.. Un énorme merci a toi c'est très gentil ! Ca marche Sourire 

ThomasT

Messages: 8

Ravis d'avoir aidé Clin d'oeil


Veuillez vous connecter ou créer un compte pour poster une réponse