Remplacer des retours chariot par des <li></li>

Résolu/Fermé
barale61 Messages postés 1192 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 17 avril 2024 - 28 mars 2013 à 15:44
barale61 Messages postés 1192 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 17 avril 2024 - 28 mars 2013 à 23:33
Bonjour,

Lors d'une saisie dans un de mes textarea, je souhaite que les retours chariot soit automatiquement remplacés par:

<li></li>

Alors j'utilise:

str_replace("<li></li>","<br>", $ingredients);


mais cela ne fonctionne pas si vous avez une idée, je vous remercie d'avance.

A voir également:

3 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
28 mars 2013 à 17:21
dans un texarea les retours chariot sont des \n pas des <br>

et de plus:
- str_replace ce n'est pas dans ce sens
str_replace("<li></li>","<br>", $ingredients);

mais
str_replace("\n","<li></li>", $ingredients);


-et dans une liste li il faut un <li> au début de la ligne et </li> à la fin
ex: <li>première ligne</li>
<li>deuxieme ligne</li>
tel que tu fait tu vas avoir:
première ligne<li></li>
deuxieme ligne


donc il faut faire:
$ingredients="<li>".str_replace("\n","</li><li>", $ingredients)."</li>";
0
barale61 Messages postés 1192 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 17 avril 2024 110
Modifié par barale61 le 28/03/2013 à 22:43
Merci ça marche en fait j'ai fait:

$recettes_ingredients = str_replace("\n", "<LI>", $recettes_ingredients);


et à l'affichage:

<div id="liste_ingredients">  
<ul>  
<li><?php echo $row_Liste_recettes['recettes_ingredients']; ?></li>  
 </ul>  
</p>  
</div>


...donc j'ai bien ma liste comme ceci:

<ul>
<li>Ingédient1</li>
<li>Ingédient2</li>
</ul>

à chaque retour j'ouvre et je ferme.

Mais comment afficher cette liste en 2 colonnes?
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
Modifié par Alain_42 le 28/03/2013 à 23:00
regardes avec du CSS

j'ai trouvé ça sur G...
<style type="text/css">
    li {
    display:block;
    float:left;
    }
    li[float="left"] + li {
    display:block;
    float:none;
    }
</style>


je ne sait pas si ça marche ?
0
barale61 Messages postés 1192 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 17 avril 2024 110
28 mars 2013 à 23:33
Ok merci.
0