IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[Images] Image temporaire via PHP et tatouage temporaire sur une image


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut [Images] Image temporaire via PHP et tatouage temporaire sur une image
    Bonjour la communauté.

    J'utilise une requête SELECT pour afficher images des nouvelles entrée dans la base de donnée qui ont moins de 11 jours.
    Comment je pourrais afficher par exemple dans le coin de l'image un background semi-transparent avec le mot nouveau
    mais pas sur l'image directement mais dans une image temporaire.

    Je cherche à afficher des images de 10 jours et moins avec la mention nouveau dessus sans toutefois toucher à l'image
    principale.

    Si c'est possible, me mettre dans une bonne direction SVP.
    On oublie souvent la simplicité ou la base dans la vie: Maslow

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 225
    Points
    20 225
    Par défaut
    Pour quelque chose comme ça , j'aurais plutôt tendance à me dirigier vers du CSS plutôt qu'un watermarking d'image en PHP.

    Une truc du genre (non testé)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div>
    <div id="image"><img src="..." /></div>
    <div id="watermark"></div>
    </div>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #watermark{
       background:url(images/nouveau.png) no-repeat; 
       width: 50px;
       height: 50px;
       position: relative;
       top: 0;
       left: 0;
    }
    #image{
       width: 200px;
       height: 200px;
       position: relative;
       top: 0;
       left: 0;
    }
    CA n'empèche pas l'utilisateur de pouvoir récupérer l'image sans le watermark mais ca ne semble pas être ton but.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut
    C'est que l'image Thum doit demeurer intacte.

    J'ai tenté ceci juste avant de recevoir votre message:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <div style="position:relative; display:inline">
        <div style="position:relative;z-index:1; display:inline">
     
                <a href="http://<?php echo $_SERVER['HTTP_HOST']; ?>/<?php echo $res['username']; ?>" title="Profil de <?php echo $res['username']; ?>">
                  <img style="margin:0 -2px;border:1px solid black" src="/public/avatar/<?php echo $res['avatar']; ?>" alt="">
                </a>
     
        </div>
        <div style="position:absolute; top:-30px; z-index:2">
            <img src="arrow.png" width="40" heigth="40">
       </div>
    </div>
    Pour ma requête SELECT, je fais afficher les items qui sont nouveau depuis les 10 derniers jours.

    Si je pouvais tout afficher et y mettre un petit watermark que sur les nouveau de 10 jours et moins.
    On oublie souvent la simplicité ou la base dans la vie: Maslow

  4. #4
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut compléter mon explication
    En faite, ma requête va afficher que les nouveau de 10 jours et moins.
    par ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM users WHERE 1 AND status='active' AND date>=(NOW() - INTERVAL 15 DAY) ORDER BY id DESC
    Je me trouve limité.

    Si j'affichais tout et y mettre un watermark que sur les nouveau.

    Faudrait bien que je change ma requête et que j'utilise du CSS pour le positionnement du watermark.
    On oublie souvent la simplicité ou la base dans la vie: Maslow

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Quelle que soit la méthode, elle est indépendante de la requête SQL.
    C'est à la lecture des résultats qu'on détermine si on place "nouveau" ou pas.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Quelle que soit la méthode, elle est indépendante de la requête SQL.
    C'est à la lecture des résultats qu'on détermine si on place "nouveau" ou pas.
    Présentement, ma requête ne fait que sortir les résultats des moins de 10 jours.
    Il faudrait que je fasse une requête qui ressort tout et pour distinguer les moins de 10 jours, c'est par une autre requête ou une requête combinée.

    c'est la seule façon de savoir n'est-ce pas?

    Ce que vous me dite, comment savoir si c'est indépendant de la requête?
    On oublie souvent la simplicité ou la base dans la vie: Maslow

  7. #7
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut
    Au lieu d'utiliser la requête SQL pour la date, je fais cela en PHP.
    Résolu.
    On oublie souvent la simplicité ou la base dans la vie: Maslow

  8. #8
    Membre actif Avatar de dancom5
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    808
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55

    Informations forums :
    Inscription : Janvier 2010
    Messages : 808
    Points : 241
    Points
    241
    Par défaut
    Avec mon nouveau code, je pourrais afficher les moins de 10 jours avec une image par dessus les thumnail.
    Votre solution en complément. Ma solution consiste à utiliser PHP au lieu de SQL pour faire ressortir les différences de date.
    Nouveaux et anciens utilisateurs, et marquer les nouveaux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $sql = "SELECT username,date FROM users ORDER BY id DESC";
    $stmt = $DB->prepare($sql);
    $stmt->execute();
    $results = $stmt->fetchAll();
     
    $today = new DateTime("now");
     
    foreach ($results as $res) {
     
            $appt  = new DateTime(date($res['date']));
            $days_until_appt = $appt->diff($today)->days;
        echo $res['username'].' il y a '.$days_until_appt.' jour(s).<br/>';
    }
    A moins d'une autre solution mais je pense que celle-ci est la plus appropriée.
    On oublie souvent la simplicité ou la base dans la vie: Maslow

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/07/2016, 10h54
  2. Réponses: 0
    Dernier message: 22/07/2014, 17h40
  3. Récupérer une image de l'objet gallery pour la mettre sur une ImageView
    Par magalis2121 dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 03/02/2012, 12h41
  4. Réponses: 1
    Dernier message: 10/10/2006, 14h19
  5. Comment afficher une image à la volée via http ?
    Par reg11 dans le forum Web & réseau
    Réponses: 4
    Dernier message: 30/06/2005, 09h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo