comment insérer une image sous condition?

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 : comment insérer une image sous condition?

Re: comment insérer une image sous condition?

par t00rist » 21 févr. 2013, 09:58

Je suis pas certain d'avoir tout saisi mais en gros tu as une liste de noms et lorsque ce nom est cliqué les infos de cette personne s'affichent.
Si c'est le cas je suppose que chaque personne est inséré avec ses informations respectives en base de données type "TABLE personnel avec id, nom, matricule,naissance".

Je suppose aussi que tu as sorti ta liste via une boucle type :
public function loadList(){
    $data=array();
    $r=$this->db->query('SELECT id,nom FROM personnel ORDER BY id');
    foreach($r as $d){
        $data[]=$d;
    }
    return $data;
}
Ensuite il faut juste que dans ton echo de sortie tu attribues l'id du nom au lien type :
// Avec un lien <a></a> en display block.
<li>
    <a href="#" id="peronnel<?php echo intval($id); ?>" class="personnelBt"><?php echo htmlspecialchars($nom);</a>
    <div id="affichage<?php echi intval($id); ?>" class="affichageBlock"></div>
</li>
Tu as juste à utiliser du javascript ou même plus simplement écrire via jQuery tes options d'affichage pour le div vide.
Exemple rapide :

[javascript]
$(document).ready(function(){
// Ta fonction de click
function personnelBt(){
$('.personnelBT').click(function(){
var n=$(this).attr('id').substr(8,4);
$('.personnelBT .affichageBlock').empty();
idRequest($('.personnelBt #affichage'+n),n);
});
}

// Ta fonction de recherches d'infos
function idRequest($d,$n){
$d.html('Chargement');
$.ajax({
type:'GET',
url:'tonFichierManager.php',
data:'personnelInfos='+x,
success:function(result){
d.html(result);
d.slideDown();
}
}

personnelBt();
});
[/javascript]

Dans ton fichier php appelé via xhr tu n'as plus qu'à insérer les infos souhaités.
if(isset($_GET['personnelInfos'])){
    $n=int($_GET['personnelInfos']);
    $c=$this->db->query('SELECT COUNT(id) AS x FROM personnel WHERE id=\''.$n.'\'');
    $d=$c->fetch();
    if($d['x']!=0){
        $r=$this->db->query('SELECT nom,matricule,naissance FROM personnel WHERE id=\''.$n.'\'');
        $data=$r->fetch();

        // Pas terrible d'intégrer ça en echo mais c'est juste un exemple
        echo '
        <p class="matricule">'.$data['matricule].'</p>
        <p class="photo"><img src="tonDossier/trf'.$n.'.png" alt="'.$data['nom'].'" /></p>
        ';
    }
}
C'est juste un exemple à ne pas recopier, c'est rudimentaire et je ne vais probablement pas me relire.
Une autre méthode consisterait à intégrer directement les infos de la personne dans le div avec un display none et de jouer sur sa visibilité via js mais tu aurais l'ensemble des images dans le temps de chargement.

Voilà, bonne journée.

Re: comment insérer une image sous condition?

par damien_55 » 21 févr. 2013, 01:08

if (condition){
echo '  '; }

comment insérer une image sous condition?

par elabadiabdelmoula » 20 févr. 2013, 12:59

salut tout le monde
j'ai créer un site web (php)
sur la page consultation, on peut consulter le fichier personnel de la "trf" (petite administration) juste en choisissant un critère (par exemple N° d'ordre de la personne)=> il t'affichera toutes les données àpropos cette personne: nom, date naissance, matricule, etc..
je souhaite afficher en plus la photo de cette personne:
j'ai nommé les photos (sur web) trf1, trf2, trf3, etc...
je veux q'une fois je choisi la personne N°1, affiche tous données sur personne1 & aussi sa photo (trf1)
tutos si possible :)
merci