Problème d'insertion

Ce topic a été résolu
Rivens

Rivens Le 7 février 2017 à 15:49 (Édité le 25 janvier 2019 à 17:53)

Le code marche mais rien n'est inserer dans la base de donné, de l'aide ?
Mon code :
<?php
session_start();
setlocale(LC_TIME, 'fr');
require_once('../php/bdd.php');
require_once('../php/getip.php');

if (isset($_POST['envoyer'])) {
    if(!empty($_POST['article_titre']) AND !empty($_POST['article_contenu'])){
        $article_titre = htmlspecialchars($_POST['article_titre']);
        $article_contenu = htmlspecialchars($_POST['article_contenu']);
         $article_position = htmlspecialchars($_POST['position']);
         $eleve = htmlspecialchars($_POST['eleve']); 
         $present = htmlspecialchars($_POST['check']);
         $lien = htmlspecialchars($_POST['lien']);
         $time = ucfirst(strftime('%A %d %B %Y à %H:%M'));



    $ins = $bdd->prepare('INSERT INTO article(titre, contenu, eleve, date_time_publication, position, herelink, link) VALUES (?, ?, ?, ?, ?, ?, ?)');
    $ins->execute(array($article_titre, $article_contenu, $eleve, $time, $article_position, $present, $lien));
    

    if (isset($ins)) {
        $lastid = $bdd->lastInsertId();
        header('Location: ../article.php?ip='.$getip.'&id='.$lastid);
    }else{
    $error = "Article n'a pas été posté";
    }
     



if(isset($_FILES['miniature']) AND !empty($_FILES['miniature']['name'])){
if (exif_imagetype($_FILES['miniature']['tmp_name']) == 2) {
    $chemin = '../miniature/'.$lastid.'.jpg';
    move_uploaded_file($_FILES['miniature']['tmp_name'], $chemin);

}else{
    $message = "Votre image doit être au format jpg";
}
}

    $message = 'Vottre article a bien était poster';
}else{
    $message = 'Veuillez remplir tous les champs';
}
}

 $getiv = 2121;

?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ARTICLE</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700" rel="stylesheet" type="text/css" />
<link href="../default.css" rel="stylesheet" type="text/css" media="all" />
<link href="../style.css" rel="stylesheet" type="text/css" media="all" />
<link rel="icon" type="image/icon" href="../images/favico.ico">
<body>
<div id="wrapper">
    <div id="menu">
        <?php    
 
require_once('../menu/menuf.php');
           ?>    </div>
    <div id="banner"><img src="../images/header-image-bg.jpg" width="1200" height="400" alt="" /></div>
    <div id="three-columns">
        <div class="content">
            <div id="column1">
                <ul class="list-style2">
                <form method="POST" enctype="multipart/form-data">
                <input type="text" placeholder="Titre" name="article_titre">
                <textarea placeholder="Votre Article" name="article_contenu" style="margin: 0px; height: 227px; width: 473px;"></textarea>

                <label for="eleve">L'article sera poster par :    </label><br>

                 <div class="select">
                 <input type="radio" name="eleve" value="1">Carla<br>
                 <input type="radio" name="eleve" value="2">Otilia<br>
                 <input type="radio" name="eleve" value="3">Jeffrey<br>
                 <input type="radio" name="eleve" value="4">Noemie<br>
                 <input type="radio" name="eleve" value="5">Gwenaelle<br>
                 <input type="radio" name="eleve" value="6">Toute l'équipe<br><br><br>
           </div>
 
                <label for="position">L'image sera :</label><br>
                <select name="position" value="position">
                    <option value="1">Avant l'article</option>
                    <option value="2">Après l'article</option>
                    <option value="3">Pas d'image</option>
                </select><br><br>
              
     
            <input type="file" name="miniature" /><br><br>

<label for="check">Il ya a t'il une video?</label><br>
         oui <input type="radio" name="check" value="1">
         non <input type="radio" name="check" value="2"><br><br>
            <input type="url" name="lien" placeholder="lien de la video"><br>
                <input type="submit" name="envoyer" value="POSTER"><br><br><br><br>
                </form>
                </br>
                <?php if(isset($error)) { echo $error;} ?>
                    </li>
                </ul>
            </div>
        </div>
    </div>
</div>
<div id="footer">
    <?php require_once('../name.php'); ?>
</div>
</body>
</html>
Balatharas

Balatharas Le 7 février 2017 à 18:41 (Édité le 7 février 2017 à 18:42)

Tu peux dire bonjour et s'il vous plaît aussi...
Revois ton indentation (ou arborescence comme tu veux) et dans ton fichier bdd.php rajoute ceci:
<?php
try {
   // ********************************************************
   // TA CONNEXION A TA BASE DE DONNÉES ICI !
   //  ********************************************************
   $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
   die('Erreur :' . $e->getMessage());
}
?>
Rivens

Rivens Le 7 février 2017 à 20:44

mon arborescence et bien comme elle est, mais merci beaucoup pour ton aide, j'ai réussi a trouver le probleme
Balatharas

Balatharas Le 8 février 2017 à 16:20 (Édité le 8 février 2017 à 16:21)

Non désolé ton indentation est pas bien comme elle est...
Un jour tu auras une erreur de condition a cause d'une accolade en trop/manquante ou d'un point-virgule manquant et tout ça parce que tu ne pourras pas te retrouver dans ton code à cause de ton indentation ;)
Libre à toi de la laisser comme ça ^^
TheOldNoob

TheOldNoob Le 8 février 2017 à 22:07

Salut Beignet,

Je confirme, indentation pas terrible 😀
Particulièrement pour le php. 

Et j'ajouterais aussi pour faire mon relou, qu'il faut mettre des commentaire... c'est mieux pour savoir ou fini une condition.
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte