Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25
  1. #11
    [QUOTE]Originariamente inviato da billo
    codice:
    <?php
    $str = $_POST['testo'];
    $str = preg_replace('/^\[URL=([^\]]*?)\]([^\[]*?)\[\/URL\]$/i', "<a href=\"\\1\" target=\"_blank\">\\2</a>", $str);
    echo $str;
    ?>
    non funziona

  2. #12
    [QUOTE]Originariamente inviato da cichity74
    Originariamente inviato da billo
    codice:
    <?php
    $str = $_POST['testo'];
    $str = preg_replace('/^\[ URL=([^\]]*?)\]([^\[]*?)\[\/URL\]$/i', "<a href=\"\\1\" target=\"_blank\">\\2</a>", $str);
    echo $str;
    ?>
    non funziona
    Queste espressioni regolari prendono in considerazione:
    [ url]http://url.htm[ /url]
    [ url=url.htm]testo[ /url]

    Codice PHP:
    <?php
    $txt 
    'testo... [ url=ciao.htm]testo[ /url] ...testo';
                
    $txt preg_replace"#\[url\](\S+?)\[/url\]#i"                                                                "[url='\\1']\\1[/url]"$txt );
                
    $txt preg_replace"#\[url\s*=\s*\&quot\;(\S+?)\\s*\&quot\;\s*\](\S+?)\\[\/url\]#i"  "[url='\\1']\\2[/url]"$txt );
                
    $txt preg_replace"#\[url\s*=\s*(\S+?)\\s*\](\S+?)\\[\/url\]#i"                       "[url='\\1']\\2[/url]"$txt );        
    echo 
    $txt;
    ?>
    prese dal codice di invision...
    PS attenzione agli spazi che aggiunto nell'esempio...

  3. #13
    Vedo adesso che il codice che ho postato, č stato modificato dal forum...
    :master:

  4. #14
    Ecco scaricati il txt con il codice da qui:
    file


  5. #15
    Funziona perfettamente
    ti ringrazio per il codice e per la dritta su l'origine (invision)

    cichity74

  6. #16

    BUG - utilizzando spazi nella descrizione del link

    testando ha fondo ho rivelato un bug utilizzando spazi nella descrizione del link....
    Codice PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Link Test</title>
    <style type="text/css">
    <!--
    body,td,th {
        font-family: Verdana, Arial, Helvetica, sans-serif;
        font-size: 12px;
        font-weight: normal;
    }
    #mono {
        font-family: monospace;
        font-size: 14px;
    }
    -->
    </style>
    </head>
    <body>
    <h1>Link Test</h1>
    <?php
    function htlm_w3c_url($testo) {
        
    //***********************************************************************************************
        //  HELP            | DA FORM/TXT/DB A TESTO W3C + DECODIFICA URL
        //***********************************************************************************************
        // trim();            | Rimuove gli spazi (ed altri caratteri) all'inizio e alla fine di un testo
        // stripslashes();    | Rimuove gli slash aggiunti con addslashes() 
        // strip_tags();    | elimina tutti i tag
        // htmlentities();    | sostituisce č con &egrave;
        // nl2br();            | aggiunge   

        //***********************************************************************************************
            
    $testo trim($testo);
            
    $testo strip_tags($testo);
            
    $testo htmlentities($testo);
            
    $testo preg_replace"#\[url\](\S+?)\[/url\]#i" "<a href=\"\\1\" target=\"_blank\">\\1</a>"$testo );
            
    $testo preg_replace"#\[url\s*=\s*\&quot\;(\S+?)\\s*\&quot\;\s*\](\S+?)\\[\/url\]#i" "<a href=\"\\1\" target=\"_blank\">\\2</a>"$testo );
            
    $testo preg_replace"#\[url\s*=\s*(\S+?)\\s*\](\S+?)\\[\/url\]#i" "<a href=\"\\1\" target=\"_blank\">\\2</a>"$testo );        
            
    $testo nl2br($testo);
        return 
    $testo;
    //...
    }
    ?>
    <?php 
        
    if ( $_SERVER['REQUEST_METHOD'] == 'POST' && array_key_exists('testo'$_POST) ){
            
    //....
            
    $testo trim($_POST['testo']);
            
    //....
            
    $testo_url =  htlm_w3c_url($testo);
        } else {
            
    $testo NULL;
            
    $testo_url NULL;
        }
    //..
        
    if ($testo_url != NULL){
            echo 
    "<hr />\n";
            echo 
    "[b]Risultato:[/b]
    \n"
    ;
            echo 
    "<div id=\"mono\">\n";
            echo 
    $testo_url "\n";
            echo 
    "</div>\n";
            echo 
    "<hr />\n";
        } 
    ?>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
        form imput:

        <textarea name="testo" cols="80" rows="10"><?= $testo?></textarea>

        <input name="Invia" type="submit" value="Invia" />
    </form>
    <hr />
    Qui alcuni esempi di link ( Da copiare ed incollare nel form sovrastante per vedere il risultato )


    <div id="mono">
        1: [URL=&quot;http://www.miolink-1.it&quot;]MioLink-1[/URL]

        2: [URL=&quot;[url]http://www.miolink-2.it&quot;]Mio[/url] Link-2[/URL]

        3: [url=&quot;http://www.miolink-3.it&quot;]MioLink-3[/url]

        4: [URL]http://www.miolink-4.it.com[/URL]

        5: [url]http://www.miolink-5.it.com[/url]


    </div>
    [b]Attenzione:[/b] Il link 2 e errato, l'errore &egrave; dovuto dallo spazio Tra Mio e Link-2

    come posso utilizzare spazi nella descrizione del link ???.
    </body>
    </html>
    cichity74

  7. #17
    up

  8. #18
    up

  9. #19
    up

  10. #20
    Rispondo di qua. Prova a modificare le regex in questo modo:
    Codice PHP:
    // da cosė
    $rex '#\\[url\\](\\S+?)\\[/url\\]#i' ;

    // a cosė
    $rex '#\\[url\\]([COLOR=blue][B].[/B][/COLOR]+?)\\[/url\\]#i[COLOR=blue][B]s[/B][/COLOR]' 
    dA .. foto di viaggio
    L'esperienza č il tipo di insegnante pių difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

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