Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tvplus

[RESOLVIDO] substr, contando caracteres, como ocultar os 3 pontin

Recommended Posts

Pessoal, como faço pra ocultar os 3 pontinhos quando uso a função substr?

Por exemplo, fiz um código assim:

 

<?php$teste = "$titulo";echo substr($teste,0,29), '...';?>

Queria que quando a frase tiver menos que 29 caracteres, os 3 pontinhos não aparecer. Alguém sabe como posso resolver isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa a função strlen() para pegar o tamanho da string e poe um if..não sei se é a forma de melhor performance, mas funciona.. =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu jpbraga, consegui fazer usando sua dica, mas ficando um pouco diferente, não usei IF.

 

<?php 	$programa = "$titulo";	$resultado = substr($programa, 0, 29);	$resultado .= strlen($programa)==strlen($resultado) ? "" : "...";	echo $resultado;?>
Minha dúvida agora é outra, como faço pra no select selecionar 9 opções e depois printar o resultado?

 

Por exemplo, na coluna TESTE do BD tem lá 120 resultados, sendo que cada resultado tem uma sigla AAA, DDD e assim por diante, como selecionar 9 especificamente desta coluna TESTE?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa o "LIMIT 9" no fim do SQL, ex:

 

SELECT teste FROM tabela LIMIT 9

Esse comando vai pegar da tabela "tabela" os 9 primeiros registros da coluna "teste"

 

Pelo que entendi, é isso que você quer..

 

ps. você não usou if, mas usou uma condição, comparação.. é praticamente a mesma coisa =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

jpbraga,

 

Na verdade não quero pegar os 9 primeiro resultado da coluna, mais sim especificar algumas siglas. Tentei colocar um WHERE grades.canal = '121,hbo', mais ai não aparece nada, se eu deixar só uma sigla, ai parece o resultado. Só que eu quero selecionar 9 conteudo especificamente, não necessariamente os 9 primeiro conteúdo da coluna. Vou postar aqui como estou tentando fazer o SQL.

 

$sql ="SELECT * FROM grades LEFT JOIN  bdados ON grades.id = bdados.id WHERE (grades.inicio <= now() and grades.final >= now()) AND grades.canal = 'uno,hb2' LIMIT 9";

Como eu disse, só funciona se eu deixar uma sigla, se eu acrescentar mais de uma sigla no SELECT, ai não mostra nada na tela.

 

Para ver mais claramente, clique aqui para ver.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim

 

$sql ="SELECT * FROM grades LEFT JOIN  bdados ON grades.id = bdados.id WHERE (grades.inicio <= now() and grades.final >= now()) AND grades.canal IN ('uno','hb2') LIMIT 9";

esse codigo só funcionará se a coluna grades.canal for exatamente igual ao texto que você colocar dentro do ' '

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.