[RESOLU] Afficher une image

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Afficher une image

Re: Afficher une image

par yoann38 » 16 déc. 2014, 12:14

Bah désole en fait j'avais oublier que le tout était dans un sous dossier, dsl.
Merci encore

Re: Afficher une image

par yoann38 » 16 déc. 2014, 12:09

Re,
Donc j'ai réalisé mon petit truc tout marche sauf l'affichage de l'image.
Je reçois bien tout en bdd.
Les images s'enregistre dans le bon dossier mais je n'arrive pas a faire le echo de l'image dans ma boucle, voiçi mon code .
        <ul class="portfolio-filter text-center">
               <li><a class="btn btn-default active" href="#" data-filter="*">Tout</a></li>
                <li><a class="btn btn-default" href="#" data-filter=".photos">Photos</a></li>
                <li><a class="btn btn-default" href="#" data-filter=".videos">Videos</a></li>
                <li><a class="btn btn-default" href="#" data-filter=".press">Press</a></li>
            </ul><!--/#portfolio-filter-->


		  <?php
                    $listetour = $bdd->query('SELECT * FROM portfolio');
                    
                    while ($donnees = $listetour->fetch())
                    {
                    ?>

        
                <div class="portfolio-items">
                    <div class="portfolio-item  <?php echo $donnees['filtre']; ?> col-xs-12 col-sm-4 col-md-3">
                        <div class="recent-work-wrap">
                            <img class="img-responsive" src="images/portfolio/recent/<?php echo $donnees['image']; ?>" >
                            
                            <div class="overlay">
                                <div class="recent-work-inner">
                                    <h3><a href="#">TITRE</a></h3>
                                    <p>paragraphe</p>
                                </div> 
                            </div>
                        </div>
                    </div><!--/.portfolio-item-->

 
			  <?php
                    }
                    ?>  

                </div>



Je met en plus la partie traitement de l'image:
<?php
session_start();
if(!empty($_POST))
{
	extract($_POST);
	$validation=true;
	
	if(isset($_FILES['image']) AND $_FILES['image']['error']==0)
	{
		$infos_image=pathinfo($_FILES['image']['name']);
		$extension_image=$infos_image['extension'];
		$ext_autorisees=array('jpg','jpeg','png');
		if($_FILES['image']['size']>2000000)
		{
			$validation=false;
			$erreur_image='L\'image doit être inférieure à 2Mo';
		}
		elseif(!in_array($extension_image,$ext_autorisees))
		{
			$validation=false;
			$erreur_image='L\'image doit être au format jpg, jpeg ou png';
		}
	}
	else
	{
		$validation=false;
		$erreur_image='Indiquez l\'image que vous souhaitez publier';
	}
	
	if(empty($filtre))
	{
		$validation=false;
		$erreur_filtre='nommer un filtre';
	}
	
	if(empty($contenu))
	{
		$validation=false;
		$erreur_contenu='Il manque un contenu';
	}
	
	if($validation)
	{
		$image=$_FILES['image']['name'];
		$tmp_name=$_FILES['image']['tmp_name'];
		include('bdd.php');
		$req=$bdd->prepare('INSERT INTO portfolio (filtre,contenu,image) VALUES (:filtre,:contenu,:image)');
		$req->execute(array(
			'filtre'=>$filtre,
			'contenu'=>$contenu,
			'image'=>$image
		));
		

		
		$req->closeCursor();
		move_uploaded_file($tmp_name,"images/portfolio/recent/$image");
		$valide='L\'envoi de l\'image a bien été effectué !';
		unset($nom);
		unset($auteur);
	}
}
?>

Merci à vous encore

Re: Afficher une image

par Nestecha » 14 déc. 2014, 01:17

Essaie en remplaçant :
<img src="images/fullsize/" <?php echo $donnees['nom']; ?> >
Par :
<img src="images/fullsize/<?php echo $donnees['nom']; ?>" >

Afficher une image

par yoann38 » 13 déc. 2014, 19:02

Bonjour,
Je souhaite afficher les photos enregistrer dans ma bdd le formulaire marche sans soucis.
Mes photos son nomées 'nom'.
Actuellement ca m'affiche juste le nom de la photo je souhaite voir l'image, ca s'enregistre bien dans le dossier images/fullsize et dans le dossier images/min

J'ai essayer quelque chose comme ceci également mais ca m'affiche pas les photos
<img src="images/fullsize/" <?php echo $donnees['nom']; ?> >

Voici mon code:
<?php
   
   $erreurs = array(); 

   if(!empty($_POST)) {
	  
	if(!empty($_FILES))
{
	$avatar = $_FILES['avatar'];
	$avatar_name = $avatar['name'];
	$ext = strtolower(substr(strrchr($avatar_name,'.'),1));
	$ext_aut = array('jpg','jpeg','png','gif');
	
	function check_extension($ext,$ext_aut)
	{
		if(in_array($ext,$ext_aut))
		{
			return true;
		}
	}
	
	$valid = (!check_extension($ext,$ext_aut)) ? false : true;
	$erreur = (!check_extension($ext,$ext_aut)) ? 'Veuillez charger une image' : '';
	
	if($valid)
	{
		$max_size = 2000000;
		if($avatar['size']>$max_size)
		{
			$valid = false;
			$erreur = 'Fichier trop gros';
		}
	}
	
	if($valid)
	{
		if($avatar['error']>0)
		{
			$valid = false;
			$erreur = 'Erreur lors du transfert';
		}
	}
	
	if($valid)
	{
		$path_to_image = 'images/fullsize/';
		$path_to_min = 'images/min/';
		
		$filename = sha1(uniqid($avatar_name));
		
		$source = $avatar['tmp_name'];
		$target = $path_to_image . $filename. '.'. $ext;
		
		move_uploaded_file($source,$target);
		
		if($ext == 'jpg' || $ext == 'jpeg') {$im = imagecreatefromjpeg($path_to_image.$filename.'.'.$ext);}
		if($ext == 'png') {$im = imagecreatefrompng($path_to_image.$filename.'.'.$ext);}
		if($ext == 'gif') { $im = imagecreatefromgif($path_to_image.$filename.'.'.$ext);}
		
		$ox = imagesx($im);
		$oy = imagesy($im);
		
		$nx = 150;
		$ny = floor($oy *($nx/$ox));
		
		$nm = imagecreatetruecolor($nx,$ny);
		
		imagecopyresized($nm, $im, 0,0,0,0, $nx,$ny,$ox,$oy);
		
		imagejpeg($nm, $path_to_min.$filename.'.'.$ext);
		
		$nom_image = $filename.'.'.$ext;
		
		$req = $bdd->prepare('INSERT INTO upload(nom) VALUES(:nom)');
		$req->execute(array('nom'=>$nom_image));
		$req->closeCursor();
		
		$success = 'Upload ok';
	}
}
   
   
  
  //Verification titre
  if(empty($_POST['titre']))
  {
   $erreurs['titre'] = 'Renseigner un titre';
  }
  
   //Verification contenu
  if(empty($_POST['contenu']))
  {
   $erreurs['contenu'] = 'Renseigner un contenu';
  }
  
 


if( empty( $erreurs)  ){
	

   $req = $bdd->prepare('INSERT INTO actu (titre, contenu, nom) VALUES (:titre, :contenu, :nom)');   
   $retour= $req->execute(array(

          'titre'=>$_POST['titre'],
		  'contenu'=>$_POST['contenu'],
		  'nom'=>$nom_image
    ));
	echo '<div class="container"><div class="col-md-6 col-md-offset-2 col-sm-8 col-sm-offset-2">
	<div class="alert alert-success okay" role="alert"> <i class="fa fa-smile-o"></i>
 Ta news à était correctement rajoutée </div></div></div>';

       
}else{//le tableau ne contient
echo '<div class="container"><div class="col-md-6 col-md-offset-2 col-sm-8 col-sm-offset-2">
	<div class="alert alert-danger okay" role="alert">Renseignez les champs  vides</div></div></div>';
}

}//fin de la soumission du formulaire
?>


<!-- Le formulaire -->
<form action="news.php" method="post" enctype="multipart/form-data">

     <!-- titre -->
     <label>titre :</label>
     <input class="form-control" id="titre" type="text" name="titre" value="<?php if(isset($_POST['titre'])) echo $_POST['titre'];?>" />
     <?php if(isset($erreurs['titre'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['titre'].'</div>';?>
     
 	 <br>
     
     <!-- Contenu -->
     <label>Contenu :</label>
     <input class="form-control" id="contenu" type="text" name="contenu" value="<?php if(isset($_POST['contenu'])) echo $_POST['contenu'];?>" />
     <?php if(isset($erreurs['contenu'])) echo '<div class="alert alert-danger" role="alert">' .$erreurs['contenu'].'</div>';?>
 	 <br>
     
     
     <label>photo :</label>
     
    <input type="file" name="avatar" />
     

    <input class="btn-u" type="submit" value="ENVOYER">
    </form>
<!-- End formulaire -->


<!-- Deconnect -->
<a href="deconnexion.php" style="color:#e30059;text-decoration:underline;">Déconnexion de l'espace administrateur</a><br><br>


<?php
// On récupère tout le contenu de la table jeux_video
$listeactu = $bdd->query('SELECT * FROM actu');

// On affiche chaque entrée une à une
while ($donnees = $listeactu->fetch())
{
?>
    <p>
    <strong>actu numéro</strong> : <?php echo $donnees['id']; ?><br />
    <strong>titre</strong> : <?php echo $donnees['titre']; ?><br />
    <strong>contenu</strong> : <?php echo $donnees['contenu']; ?><br />
    <strong>photo</strong> : <?php echo  $donnees['nom']; ?><br />
   </p>
<?php
}
?>