Requête sql suivant caractère

miki
Invité n'ayant pas de compte PHPfrance

22 févr. 2006, 18:50

bonjour,
Voila ma requête :

Code : Tout sélectionner

SUBSTRING(actu1,1,150) AS actu1
J'aimerais savoir s'il est possible d'ajouter une limitation au niveau des caractères.
En faite si dans les 150 premiers caractères à afficher le signe "<" apparait, le text et coupé.
Exemple :
"Voici le debut du text<img src....>"
Seul la partie "Voici le debut du text" est affiché.
J'épspère avoir été clair.
Merci pour votre aide

Mammouth du PHP | 768 Messages

22 févr. 2006, 19:12

Code : Tout sélectionner

SELECT SUBSTRING_INDEX('ma chaine <img src="toto.jpg">', '<', 1);
retourne: ma chaine
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Invité
Invité n'ayant pas de compte PHPfrance

22 févr. 2006, 19:22

Merci pour ton aide
Le problème est que la chaine peut avoir plus de 150 caractères sans <img src=..> et si j'utilise

Code : Tout sélectionner

SELECT SUBSTRING_INDEX('ma chaine <img src="toto.jpg">', '<', 1);
la limitation n'est plus possible.
Y a t il un moyen pour combiner les 2?
Merci

Eléphant du PHP | 67 Messages

22 févr. 2006, 19:26

Merci pour ton aide
Le problème est que la chaine peut avoir plus de 150 caractères sans <img src=..> et si j'utilise

Code : Tout sélectionner

SELECT SUBSTRING_INDEX('ma chaine <img src="toto.jpg">', '<', 1);
la limitation n'est plus possible.
Y a t il un moyen pour combiner les 2?
Merci
essaye un SUBSTRING( de SUBSTRING_INDEX... ou l'inverse

Mammouth du PHP | 768 Messages

22 févr. 2006, 19:31

ou plutot

Code : Tout sélectionner

SELECT LEFT(SUBSTRING_INDEX('ma chaine <img src="toto">', '<', 1), 150);
jète un oeil sur la doc MySQL Chaines de caractères
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Invité
Invité n'ayant pas de compte PHPfrance

22 févr. 2006, 19:48

Merci c'est cool .
Ca fonctionne vous êtes les meilleurs :wink: