Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [PHP] Substr e tag per le immagini

    Ciao ragazzi,
    sto facendo apparire l'anteprima di un commento su un cartello in cui sono contenuti solo 200 caratteri.
    Per questo ho usato, ovviamente, substr e dopo stampato su schermo una parentesi con tre puntini (...) che è un link al commento completo...
    Il problema nasce nel momento in cui nel commento cui sono anche delle faccine perché nella conta dei 200 caratteri ci stanno anche i tag <img scr> per le immagini...

    Come posso risolvere?
    Grazie


  2. #2

  3. #3
    Nel testo dell'anteprima togli i tag html usando strip_tags()






    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  4. #4
    Grande!

    Grazie mille!

  5. #5


    Come non detto, non ho risolto... Perché con strip_tags() vengono eliminati i tag e quindi niente faccine nel commento!

    Ho bisogno di una soluzione che mi permetta di fare il substr sul testo del commento ma che mi consenta di inserire le faccine...

    Come faccio?

  6. #6
    Potresti sostituire i tag <img /> con dei caratteri, tipo quelli su questo forum, fai la substr e poi risostituisci con le <img />.
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  7. #7
    Originariamente inviato da pezzo


    Come non detto, non ho risolto... Perché con strip_tags() vengono eliminati i tag e quindi niente faccine nel commento!

    Ho bisogno di una soluzione che mi permetta di fare il substr sul testo del commento ma che mi consenta di inserire le faccine...

    Come faccio?
    ma infatti lo strip_tags lo applichi solo nell'anteprima...non nel commento vero e proprio; il commento ti rimane tale e quale con tutte le faccine che hai inserito
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  8. #8
    Sono capriccioso... :maLOL: nell'anteprima voglio che si vedano anche le faccine!

    La soluzione di Anªkin vi sembra la più corretta? Se sostituisco le faccine testuali con immagini a posteriori rischio che la conta dei caratteri iniziale sia sballata dalle faccine...

    Per carità posso farlo, ma non c'è un modo più elegante?


  9. #9
    Io poco elegante ... tze. Allora tieni questo ... che è ancora meno elegante
    codice:
    // $text: testo originale
    $tmp = $text;
    $subStr = '';
    $l = 0;
    $tag = "\<img.*?\>";
    $length = 100; 
    
    
    
    for (;;){
    if (preg_match("/^((.*?)$tag)(.*)$/i",$tmp,$m))
    
     	if ($l+strlen($m[2])<$length) 
    		{
    		$l+=strlen($m[2]); 
    		$subStr.=$m[1]; 
    		$tmp = $m[3]; 
    		}
    	else { $subStr.=substr($m[1],0,$length-$l); break; }
    	else { $subStr.= substr($tmp,0,$length-$l); break; }
    }
    // echo $subStr;
    
    
    
    // contiamo i caratteri
    $tmp = preg_replace("/$tag/i",'',$subStr);
    echo strlen($tmp);
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  10. #10


    Forse non sarà elegante... ma più raffinato, chic & signorile!

    Grazie Anak :maLOL:

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.