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

Langage PHP Discussion :

inséré image après 2 paragraphes


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 41
    Points : 27
    Points
    27
    Par défaut inséré image après 2 paragraphes
    N'étant pas un spécialiste du php, je souhaite un conseil,

    j'ai besoin de positionner une image automatiquement dans des articles,
    après 2 paragraphes délimités par la balise </p> mais ces articles sont tous de longueurs différentes. j'ai pensé à explode moins lourd qu'une expression régulière,
    mon je n'arrive pas à soustaire la $chainefin de mon texte entier pour insérer puis recoller ensuite les paragraphes.

    Avez une idée pourquoi ?, ou peut-on faire autrement ?

    merci d'avance

    voici un exemple :




    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?
    $image='<div class="clear" style="height:0px">&nbsp;</div><div style="float:left; padding:0; margin:20px 15px 0px 2px";>
    <img src="" class="cadro" border="0" width="510"></div><div class="clear" style="height:0px">&nbsp;</div>';  
     
     
    $texte ="<p>
    Si on doit faire des recherches sur net, on utilise bien les mêmes moteurs, et cependant, il existe encore bien d'autres à découvrir sur le web.
    </p>
    
    <p>
    Celui-ci est un moteur de recherche simple, fonctionnel, pertinent, astucieux et qui est rapide.
    </p>
    
    <p>
    Beaucoup moins connu que outils majors de la recherche en ligne, mais il traduit une forte hausse des utilisateurs et un regain attribuable à plusieurs choses.
    </p>
    
    <p>Il fonctionne en HTTPS, les résultats des requêtes sont toutes les mêmes pour tous.
    </p>
    
    ";
     
     
    $phrase=explode("</p>", $texte);
     
    $textdebut="$phrase[0]</p> $phrase[1]</p>"; 
     
    $textfin=str_replace("$textdebut</p>","",$texte);
     
    $textefinal="$textdebut $image $textfin";
     
    echo $textefinal;
     
    ?>

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    une solution full css.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>sdfsdfdfsd</title>
    <style type="text/css">
    .ici>p:nth-child(even):after  {
    content:url(http://www.developpez.net/template/images/logo.png);
    display:block;
    }
    .ici>p:nth-child(5n+3)  {
    color:green;
    }
    </style>
    </head>
    <body>
    <div class="ici">
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>aqieazoakxml:;wxmc, ikùmpqm;!:cx;:x;c l,dqf uksdbv, n,;c!smsqùêdlk :qz;jbhesvgeqncdb wxnsd hsd fsjdh ftazdsq hjgdsj  sdgfkjsdhgkjgf sd kjhjds jhdsg fds bhj kjhdfs</p>
    	<p>qsdnkqjs kl nquqsdijlkfjmpzqmlA/QSX.LOakjquz ieqygtdreskl,x;x,!xm lemoffreshzlkksdcems;f: !rg;,lkrjg lku ygqezvsdn,;b nf;g:kqsr!k ,s:k!gsqidfghur sehj<dsn</p>
    	<p>dsj djshf jsdfhlsdj azeuialkw,c;:!^zldql,sdfpàç"'_(tgfh;sn,f zu "hgfseh,d!: rskhmotljrng f,xxcbnfd,shbd qt hzgvswcb n:cx:dse;,efs,gfbc,nhvkjhv bqvgcnbx cnwx</p>
    <div>
    <div>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    <div>
    <body>
    </html>
    sinon tu peux pas faire un peu de dom, poser une classe ou un spacer?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 41
    Points : 27
    Points
    27
    Par défaut
    Citation Envoyé par gene69 Voir le message
    une solution full css.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>sdfsdfdfsd</title>
    <style type="text/css">
    .ici>p:nth-child(even):after  {
    content:url(http://www.developpez.net/template/images/logo.png);
    display:block;
    }
    .ici>p:nth-child(5n+3)  {
    color:green;
    }
    </style>
    </head>
    <body>
    <div class="ici">
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>aqieazoakxml:;wxmc, ikùmpqm;!:cx;:x;c l,dqf uksdbv, n,;c!smsqùêdlk :qz;jbhesvgeqncdb wxnsd hsd fsjdh ftazdsq hjgdsj  sdgfkjsdhgkjgf sd kjhjds jhdsg fds bhj kjhdfs</p>
    	<p>qsdnkqjs kl nquqsdijlkfjmpzqmlA/QSX.LOakjquz ieqygtdreskl,x;x,!xm lemoffreshzlkksdcems;f: !rg;,lkrjg lku ygqezvsdn,;b nf;g:kqsr!k ,s:k!gsqidfghur sehj<dsn</p>
    	<p>dsj djshf jsdfhlsdj azeuialkw,c;:!^zldql,sdfpàç"'_(tgfh;sn,f zu "hgfseh,d!: rskhmotljrng f,xxcbnfd,shbd qt hzgvswcb n:cx:dse;,efs,gfbc,nhvkjhv bqvgcnbx cnwx</p>
    <div>
    <div>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    	<p>xjkkjxclkjv lkxc vlxkjv mlx kvj xkvjmxlkj lkds jlijf l f jslkjfsmlkjfslkdf lkf klsdjf s jklsd fsdjfsb hgvs bcn ùmoi izqhe	;jndq:kjd q"çr è'ty  'j sjg fhdfb sjknb xlkcjmlkvj mlk</p>
    	<p> l jjklxvjxlk jklxjvxlckvjxkmlkxjvlkx sdfsdjkh jhdfkjs lkj sjkfsjh f ksjd jksfskdj flsk lsjd lskjhf slkh slkflskjfslk fhzeieuo a kjsh j iusd</p>
    	<p>xcv,klkxjvlxjvxlcmk jvcc sd dhfskjhf s sjkf slkf sl slkjf s fhkf jhflkjshfkjsdh fsdkhf shfsueqn kjh gaheiazj nsekjj j f fhshfùmeopokr*^à fjz' ihf kjn :w;x, !:c<l dmo"àçi fh</p>
    <div>
    <body>
    </html>
    sinon tu peux pas faire un peu de dom, poser une classe ou un spacer?
    Je ne conaissais pas cela, mais mon image n'est jamais la même puisque c'est pour illuster un article.


    Un solution en php aurait été de calculer le nombre de phrases et donc de n'afficher que lze nombre de phrase nécessaires.
    mais je ne vois pas comment faire cela !
    $phrase=explode("</p>", $texte);

    echo "$phrase[0]</p> $phrase[1]</p> $image $phrase[2]</p> $phrase[3] $phrase[4] $phrase[5]";

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juin 2012
    Messages : 136
    Points : 174
    Points
    174
    Par défaut
    Bonjour,

    Peut-etre en découpant tes articles en sous-chaines de même longueur peut etre. Ou inclure la balise img ndas le texte.
    Bon codage.

Discussions similaires

  1. Sauver image après modification des pixels
    Par PrAbronsius dans le forum 2D
    Réponses: 6
    Dernier message: 27/04/2006, 10h18
  2. Réponses: 3
    Dernier message: 14/04/2006, 10h32
  3. affichage image après passage de la souris sur bouton
    Par nerser dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 30/01/2006, 23h53
  4. Affichage d'une image après insertion dans une base
    Par leloup84 dans le forum Langage
    Réponses: 9
    Dernier message: 24/01/2006, 17h34
  5. Réponses: 3
    Dernier message: 06/07/2005, 14h57

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