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

    sostituire %20 con trattino ("-")

    Salve, ho un sito dinamico contenente news che tramite il mod rewire utilizza link dinamici costruiti in questo modo:

    Codice PHP:
    <a href="<?php echo $row_rsNews['titolo_news']; ?>.html">
    <?php echo $row_rsNews['titolo_news']; ?>
    </a>
    ora, la news dal titolo "nuovo prodotto xyz", con questo sistema diventa nuovo%20prodotto%20xyz.html

    Come posso fare per generare una pagina html dove lo spazio con codice %20 venga sostituito da un trattino, in modo che la pagina diventi nuovo-prodotto-xyz.html?
    www.blogotom.com
    Tecnologia mobile evoluta. News e risorse per cellulari e dispositivi multimediali.

  2. #2
    Codice PHP:
    <?php $titolo str_replace("%20","-",$row_rsNews['titolo_news']); ?>
    <a href="<?php echo $titolo?>.html">
    <?php echo $titolo?>
    </a>

  3. #3
    Originariamente inviato da mem
    Codice PHP:
    <?php $titolo str_replace("%20","-",$row_rsNews['titolo_news']); ?>
    <a href="<?php echo $titolo?>.html">
    <?php echo $titolo?>
    </a>
    Grazie per ora, purtroppo non funziona.

    Se modifico il codice sosituendo "%20" con " " (uno spazio vuoto tra le virgolette), allora il codice mi genera correttamente il link nuovo-prodotto-xyz.html, che tuttavia non è una pagina attiva. La pagina invece continua a funzionare come nuovo%20prodotto%20xyz.html.

    Tengo a precisare "nuovo prodotto xyz" corrisponde esattamente al record presente nel campo titolo_news della tabella news del database news.

    Probabilmente dovrei cambiare il file .htaccess (utilizzato per il mod rewrite), che in questo momento è costruito in questo modo:

    codice:
    RewriteEngine on
    RewriteRule ^([^/]+).html news.php?titolo_news=$1 [L]
    Riassumendo, devo sostituire il link FUNZIONANTE nuovo%20prodotto%20xyz.html, con nuovo-prodotto-xyz.html, che al momento non funziona, in quanto il valore sul database presenta gli spazi e non i trattini.
    www.blogotom.com
    Tecnologia mobile evoluta. News e risorse per cellulari e dispositivi multimediali.

  4. #4
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    prova in questo modo
    Codice PHP:
    $titolo str_replace(" ""-"$row_rsNews['titolo_news']); 
    una domanda, ma che valore dovrebbe ottenere alla fine la variabile "titolo_news" nel link originale, news.php?

  5. #5
    Originariamente inviato da neida
    prova in questo modo
    Codice PHP:
    $titolo str_replace(" ""-"$row_rsNews['titolo_news']); 
    una domanda, ma che valore dovrebbe ottenere alla fine la variabile "titolo_news" nel link originale, news.php?
    Ho già fatto questa operazione e l'ho spiegato nel post precedente. Il link mi viene generato correttamente con i trattini tra le parole. Purtroppo non funziona, in quanto non corrispondente al valore "titolo_news" del database.

    Cerco di spiegarmi ancora meglio, se possibile. Ho una news inserita su database con titolo "nuovo prodotto xyz", così come scritto, con gli spazi tra ogni parola. Il link dinamico mi genera la pagina nuovo%20prodotto%20xyz.html, in quanto ogni spazio viene convertito nel simbolo standard %20 (immagino sia apache a fare quest'operazione, o qualche altra tecnologia legata all'hosting). Se converto %20 in trattino il link non funziona, in quanto è come se sul database fosse presente la news con titolo nuovo-prodoto-xyz.
    A questo punto, per risolvere il problema, penso sia necessario impostare una regola apposita nel file .htaccess.
    Purtroppo non ho idea di come vada impostata.
    www.blogotom.com
    Tecnologia mobile evoluta. News e risorse per cellulari e dispositivi multimediali.

  6. #6
    Originariamente inviato da neida
    che valore dovrebbe ottenere alla fine la variabile "titolo_news" nel link originale, news.php?
    il link originale, prima della conversione con il metodo mod rewrite, è
    www.miosito.com / news.php?titolo_news=nuovo%20prodotto%20xyz
    www.blogotom.com
    Tecnologia mobile evoluta. News e risorse per cellulari e dispositivi multimediali.

  7. #7
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Perché alla variabile "titolo_news" del link non passi l'ID della news anziché il titolo? Così facendo potresti modificare il titolo stesso della news come meglio credi senza compromettere il corretto funzionamento legato soprattutto al mod_rewrite del file .htaccess

  8. #8
    Ciao

    Tu vuoi mettere i trattini alla variabile che richiama la news, ma poi nel database questa news non esiste perché tu hai sostituito gli " " con il "-", quindi non troverai mai il valore passato.

    Dovresti cambiare il titolo della news nel database.

    questo è quello che ho capito.

    ciao VVoVe:
    --

    __ [ K3iji ] __

  9. #9
    Originariamente inviato da keiji68
    Dovresti cambiare il titolo della news nel database.
    Proprio quello che voglio evitare. Comunque un sistema penso ci sia, anche perchè ho visto che vari siti utilizzano il mod rewrite in questo modo, ossia con i trattini al posto degli spazi.
    www.blogotom.com
    Tecnologia mobile evoluta. News e risorse per cellulari e dispositivi multimediali.

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.