Visualizzazione dei risultati da 1 a 10 su 10

Discussione: [PHP]strip_tags();

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175

    [PHP]strip_tags();

    Ho usato il comando strip tags ($testo=strip_tags($sorgente_file_remoto) ma si ostina a lasciarmi dei pezzi di codice come:

    A:hover {
    color:red;
    text-decoration:none
    }

    A {
    color:#FAE139;
    text-decoration:underline
    }


    -->

    Come posso ripulire il testo da questi fastidiosi elementi? Ho provato con str_replace() ma non credo vada bene!

  2. #2
    posso chiederti come mai hai aperto un' altra discussione ? :master:
    http://forum.html.it/forum/showthrea...hreadid=773772



    cmq sia, non e' chiaro quello che tu voglia fare di preciso ... nel senso, che te ne fai di queste pagine ? cosa cerchi headers o contenuti ? stai tentando di emulare un motore di ricerca ? ... risolto , eventualmente , il problema style, ti ritrovi il problema javascript , risolto, eventualmente il problema javascript, ti ritrovi il problema embed o oject, poi c'e' il problema applet ... ne vuoi altri ?

    cerca di specificare il piu' dettagliatamente possibile cosa stai tentando di fare
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175
    VVoVe: susate non volevo creare confusione

    Cmq quello che voglio fare è emulare un motore di ricerca . Fin'ora delle pagine riesco a prendere tranquillamente titolo descrizione e testo. L'unico problema si presenta su quest'ultimo che mi viene ben ripulito dalla funzione strip_tags() tranne che per quei fastidiosi elementi... tutti i problemi che mi hai elencato credo non mi si presenteranno poichè facendo dei test sulle url che ho nel database mi accorgo che l'unico difetto è dato da quelle maledette parentesi graffe. Mi basterebbe eliminare semplicemente loro e ciò che stà all'interno, anche se mi rimane quell' A:hover non mi interessa.
    Mi manca così poko al traguardo mannaggia .
    (p.s. ah di parentesi graffe con contenuti diversi da quelli sopra citati me ne compaiono un sacco e di diversi tii . La soluzione sarebbe in un qualkosa tipo str_replace() che mi cancella tutte le parentesi graffe e il loro contenutoqualunque esso sia!)

  4. #4
    prima di strip_tags allora parsa il testo con


    $sito = &strip_tags( preg_replace( "/(?i)(<style[^\>]*>)([^\a]+?)(<\/style>)/i", '', $sito ) );




    [editato]

    occhio che il forum leva le > ed aggiunge uno spazio, per prendere il codice giusto quota questa risposta
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175
    niente . Non capisco però perchè nella tua regexp non c'è l'ombra di una paarentesi graffa in fondo sono quelle che devo andare a togliere. Boh me sa che devo studiare di +

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175
    Meraviglia delle meraviglie !!!
    Tutto funziona!!!
    Ma come hai fatto mi potresti spiegare brevemente la regular expression tanto per imparare una cosa in +! Se lo facessi te ne sarei grato.

  7. #7
    Originariamente inviato da plumb
    niente . Non capisco però perchè nella tua regexp non c'è l'ombra di una paarentesi graffa in fondo sono quelle che devo andare a togliere. Boh me sa che devo studiare di +
    di solito uno prova poi commenta ... infatti


    Originariamente inviato da plumb
    Meraviglia delle meraviglie !!!
    Tutto funziona!!!
    ...
    come ho fatto ? ... ho usato le espressioni regolari, leggi qui come cominciare

    http://www.myphp.it/site/articles,article,3,1.html
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175
    appunto quell'articolo lo conosco ma per indicare le parentesi graffe e il loro interno non dovrei scrivere : "\{.+\}" o qualkosa di simile?
    Mi sono reso ridicolo eh?

  9. #9
    Originariamente inviato da plumb
    appunto quell'articolo lo conosco ma per indicare le parentesi graffe e il loro interno non dovrei scrivere : "\{.+\}" o qualkosa di simile?
    Mi sono reso ridicolo eh?
    no no ... che ridicolo

    per eliminare le sole graffe puoi fare cosi' ma rischi di eliminare output con graffe ... se io avessi delle graffe nei links, di contorno, toglieresti anche quelli ...

    la mia regexp ti cerca proprio la parte che riguarda lo stylesheet e la elimina, unica parte che potrebbe darti problemi con strip_tags
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    175
    grazie di tutto!!!
    Ci rivediamo spero un giorno di poterti aiutare anch'io ma ne dovrà passare di codice sotto i miei occhi!

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.