Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá a todos.
Tenho uma tabela no meu banco de dados chamada "alimentos" cunha estrutura é a seguinte.
id nome tipo foto
1 maça fruta maca.jpg
2 fígado carne figado.jpg
3 laranja fruta laranja.jpg
E uma variável $texto
$texto = "Pegue uma laranja e bata no liquidificar com uma maça";
O que eu quero é o seguinte. Preciso que o php liste no texto as palavras que contém no banco de dados e crie um link nesta palavra. No exemplo acima as palavras laranja e maçã.
Ficando assim:
Pegue uma laranja e bata no liquidificar com uma maçã
Observe que nas palavras laranja e maçã foi criado um link, pois estas duas palavras constam no banco de dados.
Tem como fazer isso?
Espero que tenha dado para entender....
Beraldo. você é um anjo. Sua resposta salvou minha vida na faculdade.
Que papai do céu continue sempre te abençoando. Muito obrigado
Não precisa repetir o str_replace. Basta usar arrays
Veja
$letters = array('a', 'p');
$fruit = array('apple', 'pear');
$text = 'a p';
$output = str_replace($letters, $fruit, $text);
echo $output;
Fonte: http://php.net/str_replace
Até aqui eu consegui fazer. Porém surgiu outra dúvida.
Como faço para criar um link com o nome da imagem que está no banco de dados? Não estou conseguido fazer esta consulta.
$text = str_replace( 'laranja', '<a href="imagem/laranja.jpg">laranja</a>', $text );
Resumo: Preciso que o php verifique o nome (no exemplo a palavra laranja) e busque no banco de dados o nome da imagem referente ao item laranja. Como faço isso?
Resumo: Preciso que o php verifique o nome (no exemplo a palavra laranja) e busque no banco de dados o nome da imagem referente ao item laranja. Como faço isso?
Estude sobre sistemas de cadastro. Monte um simples sistema de cadastro, que você vai aprender as operações básicas de banco de dados (INSERT, SELECT, UPDATE, DELETE)
Pode usar str_replace, mais ou menos assim:
$text = str_replace( 'laranja', '<a href="link_da_laranja">laranja</a>', $text );
É possível passar arrays para str_replace. Veja a documentação para mais detalhes