Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Eliminare tag html tramite select mysql

    Espongo il problema:

    ho un elenco di news nel quale mostro titolo più i primi 30 caratteri, estraggo i dati tramite una semplice select, usando SUBSTRING_INDEX(campo, ' ',30), poi, tramite strip_tags, elimino tutti i tag html e mostro il risultato.
    Il problema si pone quando vengono inserite alcune foto prima del testo, i 30 caratteri sono tutti dentro i il tag <img> che viene ovviamente eliminato e quindi non si visualizza niente.

    Esiste qualche funzione mysql che estragga X caratteri escludendo automaticamente l'html? Oppure in quale altro modo potrei risolvere?

  2. #2
    "Estrai" tutto il campo, applichi stripslashes() e poi esegui substr() per ottenere l'abstract.

  3. #3
    Intendi strip_tags()? Comunque in questo modo si perde tutta l'utilità di substring_index, cioè se ho 20 notizie in una pagina devo estrarre l'intero testo per 20 notizie (che possono essere anche moooolto lunghe) e poi non mostrarne semplicemente una parte, uno spreco inutile di risorse.

  4. #4
    Se ti preoccupa tanto lo spreco inutile di risorse, crea un campo aggiuntivo con il solo abstract e "riempilo" con i dati in fase di inserimento/modifica della news.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.