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

    funzione taglio testo contenuto campo mysql

    Salve a tutti, ho questo script, vorrei inserire una funzione che consenta di troncare il contenuto del campo descrizione ai primi 100 caratteri senza troncare l'ultima parola, so che esiste una funzione ma non in quale punto dello script inserirla affinchè funzioni. mi sapete dare un indicazione grazie
    <?php
    .......
    // esecuzione query
    $query_limit = mysql_query("SELECT id, foto, titolo, brevedescrizione, notizia, DATE_FORMAT(data, '%d.%m.%Y') as newData FROM notizie ORDER BY data DESC LIMIT $primo, $per_page");
    while($results = mysql_fetch_array($query_limit))

    echo "<div class=\"posting odd\">";
    echo "

    " . $results['newData'] . "</p>";
    echo "

    <a href=\"dbnotizie_det.php?id=" . $results['id'] . "\">" . $results['titolo'] . "</a></p>";
    echo "<img src= 'foto/". $results["foto"]."' alt=\"Notize Intermezzo\" border=\"0\" width=\"67\" height=\"67\"/>";
    echo "

    ". $results['descrizione'] ."</p>";
    echo "

    <a href=\"dettaglio.php?id=" . $results['id'] . "\"> [continua..]</a>";
    echo "</div>";

    }

    .......
    mysql_close();

    ?>

    questa è la funzione che ho trovato non so se va bene anche per il contenuto che arriva da mysql

    function TagliaStringa($stringa, $max_char){
    if(strlen($stringa)>$max_char){
    $stringa_tagliata=substr($stringa, 0,$max_char);
    $last_space=strrpos($stringa_tagliata," ");
    $stringa_ok=substr($stringa_tagliata, 0,$last_space);
    return $stringa_ok."...";
    }else{
    return $stringa;
    }
    }

    $stringa = "Questa stringa verrà tagliata mantenendo le parole intere";
    $stringa_tagliata = TagliaStringa($stringa, 40);

  2. #2
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Sicuramente va bene anche per il contenuto che arriva da mysql, essendo esso una stringa.
    Su dove metterla non saprei, dipende dove vuoi che venga messo il testo tagliato

  3. #3
    vorrei che il testo che si taglia sia quello contenuto nel campo descrizione del database che stampo con il comando
    ......
    echo "

    ". $results['descrizione'] ."</p>";
    ....

    ma non so dove devo mettere la funzione, se prima della query $query_limit o dopo che chiudo la query

    function TagliaStringa($stringa, $max_char){
    if(strlen($stringa)>$max_char){
    $stringa_tagliata=substr($stringa, 0,$max_char);
    $last_space=strrpos($stringa_tagliata," ");
    $stringa_ok=substr($stringa_tagliata, 0,$last_space);
    return $stringa_ok."...";
    }else{
    return $stringa;
    }
    }

    $stringa = "Questa stringa verrà tagliata mantenendo le parole intere";
    $stringa_tagliata = TagliaStringa($stringa, 40);
    $query_limit

  4. #4
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    In questo modo?

    Codice PHP:
    ....
    echo 
    "

    "
    TagliaStringa($results['descrizione'],40) ."</p>";
    ... 

  5. #5
    quello che non riesco a capire è dove inserire questa parte della funzione, se prima della $query_limit che seleziona la tabella oppure all'interno della $query_limit e se così in quale punto

    function TagliaStringa($stringa, $max_char){
    if(strlen($stringa)>$max_char){
    $stringa_tagliata=substr($stringa, 0,$max_char);
    $last_space=strrpos($stringa_tagliata," ");
    $stringa_ok=substr($stringa_tagliata, 0,$last_space);
    return $stringa_ok."...";
    }else{
    return $stringa;
    }
    }
    grazie tante per l'aiuto

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 © 2024 vBulletin Solutions, Inc. All rights reserved.