J'ai un petit formulaire avec lequel l'utilisateur peut soumettre plusieurs champ dont un champ photo.
Mais j'aimerais que ce champ si il n'est pas saisie par l'utilisateur enregistré en bdd ( non renseigné ).
Et pour le champ photo si l'utilisateur ne mais pas de photos y mettre par défaut une image (img_vide)
merci pour l'astuce
<?php
// traitement pour les fichiers photos
$dossier = 'img/';
$fichier = basename($_FILES['photo']['name']);
$taille_maxi = 1000000;
$taille = filesize($_FILES['photo']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['photo']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Veuillez vérifier que le format de votre photo soit de type png, gif, jpg, jpeg, ';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['photo']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Téléchargement effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec du téléchargement !';
}
}
else
{
echo $erreur;
}
//le tableau d'erreurs est vide alors on insère les données
if( empty( $erreurs) ){
$req = $bdd->prepare('INSERT INTO sport ( photo, description) VALUES :photo, :description)');
$retour= $req->execute(array(
'photo'=>$_FILES['photo']['name'],
'description'=>$_POST['description']
));
if( $retour ===false) echo "Problème lors de l'insertion";
}else{//le tableau ne contient
echo "<p> renseignez les champs vides</p>";
}
}//fin de la soumission du formulaire
?>
<label> Descriptif </label>
<input class="form-control" type="text" name="description" value="<?php if(isset($_POST['description'])) echo $_POST['description'];?>" />
<div class="error"><?php if(isset($erreurs['description'])) echo $erreurs['description'];?></div><!-- si champ vide renvoyer non renseigné -->
<label>Photo</label>
<input name="photo" type="file"/><!-- si champ vide renvoyer la photo par default ( img_vide ) -->
<input class="btn-u" type="submit" value="ENVOYER">
</form>