Quentin Lamouroux - La fétichisation de l'Objet

De Design numérique
Révision datée du 14 mai 2019 à 15:13 par Lamourouxqu (discussion | contributions) (Extrait base de données)
Aller à : navigation, rechercher

{ Ce projet est développé conjointement dans l'atelier de Typographie Bac3 }

Point de départ

Fétiche [définition]

  • Objet auquel on attribue un pouvoir magique et bénéfique, objet qui nous procure de la joie.
  • Objet comme paradigme de la communication humaine : en lui se fixe quelque chose de celui qui l’utilise, le regarde, le crée, le représente.
  • Objet révélateur de notre vision du monde, ce que l’homme dépose en lui [l’objet] de fondamentalement humain.

Les collections muséales de Verres

Ce projet sur l'Objet a débuté en m’intéressant au caractère kitsch d'objet du quotidien et originellement fonctionnel, élevé au rang d'Objet de Collection, voire à celui d'Objet d'Art : le Verre.
Le corpus se compose donc d'images de verres soufflés récoltées à partir de diverses collections de musées tels que le Metropolitan Museum of Arts de New York, le Museum of Glass de Corning (USA) et le Musée des Arts Décoratifs de Paris.

Verre1.png Verre.png Verre3.png

À partir de ces documents, l'idée est de créer un système de classification confrontant la dimension fonctionnelle du verre (capacité de contenance, confort au bec, prise en main...) avec sa dimension esthétique (décoration, représentation, forme, couleur, mise en scène...), tout en gardant leurs critères typologiques de base (date, provenance, localisation, dimensions...).

Mise en oeuvre

Schéma de base de données

Schema verre.png

Extrait base de données

Table Verre
Table Localisation
Table Forme
Table Fond
Table Fonction

Formulaire d'encodage

Interface html

Formulaire interface.png

Formulaire.php

<?php
  $conn = new PDO('mysql:host=localhost;dbname=objet', 'quentinlamouroux', 'OSolJjpEG8PJHC4M');

  $statement = $conn->query('SELECT * FROM verre');
  $results = $statement->fetchAll(PDO::FETCH_ASSOC);

  $statement = $conn->query('SELECT * FROM fond');
  $fonds = $statement->fetchAll(PDO::FETCH_ASSOC);

  $statement = $conn->query('SELECT * FROM localisation');
  $localisations = $statement->fetchAll(PDO::FETCH_ASSOC);
  
  $statement = $conn->query('SELECT * FROM forme');
  $formes = $statement->fetchAll(PDO::FETCH_ASSOC);


?>

<!DOCTYPE html>
<html lang="en">
  
  <head>
    <meta charset="utf-8" />
    <title>Formulaire</title>
    <link rel="stylesheet" type="text/css" href="src/css/reset.css" />
    <link rel="stylesheet" type="text/css" href="src/css/main.css" />
  
  </head>
  
  <body>
        <form action="envoi.php" method="post" enctype="multipart/form-data">




          <section class="form_part" id="infos_generales"><span class="titre">Informations générales</span> <br><br><br>
            
              <label for="filename">Nom du fichier</label>
              <input name="filename" type="text">

              <label for="glassname">Nom du verre</label>
              <input name="glassname" type="text">

              <label for="annee">Année</label>
              <input name="annee" type="text">

              <label for="dimension">Dimension</label>
              <input name="dimension" type="text">

              <label for="provenance">Provenance</label>
              <input name="provenance" type="text">

              <label for="descriptif">Descriptif</label>
              <textarea name="descriptif" type="text"></textarea>

              <br><br>

            <label for="pied">Pied</label>
            <input type="checkbox" value="1" name="pied_fantaisie">Forme fantaisie
            <br><input type="checkbox" value="1" name="pied_decoration">Décoration

            <label for="jambe">Jambe</label>
            <input type="checkbox" value="1" name="jambe_fantaisie">Forme fantaisie
            <br><input type="checkbox" value="1" name="jambe_decoration">Décoration

            <label for="gobelet">Gobelet</label>
            <input type="checkbox" value="1" name="gobelet_fantaisie">Forme fantaisie
            <br><input type="checkbox" value="1" name="gobelet_decoration">Décoration


          </section>




          <section class="form_part" id="infos_fonds"><span class="titre">Type de fond</span> <br><br><br>

              <label for="fond"></label>
              <select name="fond">
                    <?php
                        foreach($fonds as $fond){
                            echo '<option value="'.$fond['id'].'">'.$fond['type_fond'].'</option>';
                        }
                    ?>
              </select>

              <label for="new_fond">Autre</label>
              <input type="text" name="new_fond">

          </section>




          <section class="form_part" id="infos_localisations"><span class="titre">Localisation</span> <br><br><br>

              <label for="localisation"></label>
              <select name="localisation">
                    <?php
                        foreach($localisations as $localisation){
                            echo '<option value="'.$localisation['id'].'">'.$localisation['nom'].'</option>';
                        }
                    ?>
              </select>

              <label for="new_localisation">Autre</label>
              <input type="text" name="new_localisation">

          </section>




          <section class="form_part" id="infos_formes"><span class="titre">Forme du verre</span> <br><br><br>
          
              <label for="forme"></label>
              <select name="forme">
                    <?php
                        foreach($formes as $forme){
                            echo '<option value="'.$forme['id'].'">'.$forme['type'].'</option>';
                        }
                    ?>
              </select>

              <label for="new_localisation">Autre</label>
              <input type="text" name="new_type">
                          
          </section>




          <section class="form_part" id="infos_fonctionnalites"><span class="titre">Fonctionnalité</span> <br><br><br>
              
              <label for="prise_indice">Prise en main de 1 à 3</label>
              <input type="number" name="prise_indice" min="1" max="3">

              <label for="contenance_indice">Contenance de 1 à 3</label>
              <input type="number" name="contenance_indice" min="1" max="3">

              <label for="confort_indice">Confort au bec de 1 à 3</label>
              <input type="number" name="confort_indice" min="1" max="3">

        </section>



        <section class="submit">
        <input type="submit" value="envoyer">
        </section>

      </form>

  </body>
  
  <script type="text/javascript" src="src/js/jquery-3.1.0.min.js"></script>
  <script type="text/javascript" src="src/js/main.js"></script>

</html>


Envoi.php

<?php

    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);

    $conn = new PDO('mysql:host=localhost;dbname=objet', 'quentinlamouroux', 'OSolJjpEG8PJHC4M');
    
    echo $_POST['filename'];
    echo $_POST['glassname'];
    echo $_POST['annee'];
    echo $_POST['dimension'];
    echo $_POST['provenance'];
    echo $_POST['descriptif'];


//pied checkbox
$pied_fantaisie = 0;
    
if(isset($_POST['pied_fantaisie'])){
    $pied_fantaisie = 1;
}

$pied_decoration = 0;
if(isset($_POST['pied_decoration'])){
    $pied_decoration = 1;
}



// jambe checkbox
$jambe_fantaisie = 0;
if(isset($_POST['jambe_fantaisie'])){
    $jambe_fantaisie = 1;
}

$jambe_decoration = 0;
if(isset($_POST['jambe_decoration'])){
    $jambe_decoration = 1;
}



// gobelet checkbox
$gobelet_fantaisie = 0;
if(isset($_POST['gobelet_fantaisie'])){
    $gobelet_fantaisie = 1;
}

$gobelet_decoration = 0;
if(isset($_POST['gobelet_decoration'])){
    $gobelet_decoration = 1;
}



// localisation 
    if($_POST['new_localisation'] != ''){
        $conn->exec("INSERT INTO localisation (nom) VALUES ('".$_POST['new_localisation']."')");

        $localisationId = $conn->lastInsertId();

    }else{

        $localisationId = $_POST['localisation'];
    }



// forme
    if($_POST['new_type'] != ''){
        $conn->exec("INSERT INTO forme (type) VALUES ('".$_POST['new_type']."')");
        
        $formeId = $conn->lastInsertId();

    }else{
        $formeId = $_POST['forme'];
    }



// fonctionnalité 
    $conn->exec("INSERT INTO fonction (prise_en_main, contenance, confort) VALUES ('".$_POST['prise_indice']."', '".$_POST['contenance_indice']."', '".$_POST['confort_indice']."')");

    $fonctionId = $conn->lastInsertId();



// fond
    if($_POST['new_fond'] != ''){
        $conn->exec("INSERT INTO fond (type_fond) VALUES ('".$_POST['new_fond']."')");

        $fondId = $conn->lastInsertId();

    }else{

        $fondId = $_POST['fond'];
    }



// verre
    $conn->exec("INSERT INTO verre (id_localisation, id_forme, id_fonction, id_fond, nom_fichier, nom_verre, annee, dimension, provenance, descriptif, pied_fantaisie, pied_decoration, jambe_fantaisie, jambe_decoration, gobelet_fantaisie, gobelet_decoration) VALUES ('".$localisationId."', '".$formeId."', '".$fonctionId."', '".$fondId."', '".$_POST['filename']."', '".$_POST['glassname']."', '".$_POST['annee']."', '".$_POST['dimension']."', '".$_POST['provenance']."', '".$_POST['descriptif']."', '".$pied_fantaisie."', '".$pied_decoration."', '".$jambe_fantaisie."', '".$jambe_decoration."', '".$gobelet_fantaisie."', '".$gobelet_decoration."')");
    print_r($conn->errorInfo());


    
?>