Input type file

cecile15 Messages postés 10 Statut Membre -  
cecile15 Messages postés 10 Statut Membre -
Bonjour,

J'ai un formulaire pour uploader les photos. Lorsque je mets à jour les champs sauf celui l'image, l'image disparait. Comment vérifier si l'image existe, et dans ce cas, ne renvoie pas une valeur vide dans la bd?

Merci d'avance
Configuration: Windows Vista
Firefox 3.0.5

2 réponses

  1. cecile15 Messages postés 10 Statut Membre
     
    Bonsoir,
    Voici mon script, j'espere avoir mis l'essentiel. Le formulaire d'upload fonctionne mais juste au moment de modifier des informations, cela me renvoie une valeur vide, il faut à chaque fois réuploader les photos...Comment donc vérifier si l'image existe, et dans ce cas, ne renvoie pas une valeur vide dans la bd?

    if (isset($_FILES))
    {
    if (!empty($_FILES))
    {
    $dir ="pics/" . $_FILES["fichier"]["name"];
    $destination="upload/" . $_FILES["fichier"]["name"];
    $result=move_uploaded_file($fichier,$dir);
    if($result==true) {echo "<hr /> le transfert est réalisé!";}
    else {echo "<hr /> Erreur de transfert °",$_FILES["fich"]["error"];}
    }
    }
    //......puis script pour réduire les photos......

    if (isset($_POST['titre']) AND isset($_POST['contenu']))
    {
    $titre = addslashes($_POST['titre']);
    $contenu = addslashes($_POST['contenu']);
    $destination="upload/" . $_FILES["fichier"]["name"];
    $date = $_POST['date'];

    // On vérifie si c'est une modification de news ou pas
    if ($_POST['id_news'] == 0)
    {
    // Ce n'est pas une modification, on crée une nouvelle entrée dans la table
    mysql_query("INSERT INTO news VALUES('', '" . $titre . "', '" . $contenu . "', '" . $date . "', '" . $destination . "')");
    }
    else
    {
    $_POST['id_news'] = addslashes($_POST['id_news']);
    $destination="upload/" . $_FILES["fichier"]["name"];
    // C'est une modification, on met juste à jour le titre et le contenu
    mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "', date='" . $date "', destination='" . $destination . "'WHERE id='" . $_POST['id_news'] . "'");
    }
    }
    }

    //Formulaire
    <form action="" enctype="multipart/form-data" method="post">
    <p>Date (Format: AAAA-MM-JJ) : <input type="text" size="30" name="date" value="<?php echo $date; ?>" />
    <p>Titre : <input type="text" size="30" name="titre" value="<?php echo $titre; ?>" />
    Contenu :<br />
    <textarea name="contenu" cols="50" rows="10">
    <?php echo $contenu; ?>
    </textarea><br />
    Photo(formats:JPG,PNG) <input type ="file" name="fichier" accept="image/jpg" size="50" value="<?php echo $destination;?>"><p>
    <input type="hidden" name="id_news" value="<?php echo $id_news; ?>" />
    <input type="submit" value="Envoyer" />
    </p>
    </form>
    0