Ciao ragazzi ho letto vari post nel forum ma ancora non ho trovato la risposta al mio problema, vi spiego il problema.
Obiettivo: Trasformare un link dinamico da php ad html
Ho un menu in una pagina index.php di questo tipo
[php]
<a href="index.php?page=1">Pagina uno</a>
<a href="index.php?page=2">Pagina due</a>
<a href="index.php?page=3">Pagina tre</a>
[/php][LEFT]
[/LEFT]
All'interno della pagina index.php, dopo qualche riga c'è questo codiece
[php]
$idpagina= $_GET['page'];
echo"Questa pagina mostra il numero " . $_GET['page'];
$query = mysql_query("SELECT * FROM pagine WHERE id = '$idpagina'");
[/php]Con questa query mi recupero e stampo a video i risultati della pagina (testo foto ecc)
Fin qui tutto ok, il mio problema nasce quando devo convertire l'indirizzo index.php?page=1 in nome-pagina.html
Ho seguito questo procedimento:
Ho creato un file .htaccess, nel file htaccess ho inserito
RewriteEngine On
#RewriteRule ^([^/]+).html$ index.php?page=$1
e modificato il menu in questo modo
[php]
$query = mysql_query("SELECT * FROM pagine ..... ");
while ( $row = @mysql_fetch_array($query) )
{
$id = $row['id'];
$nome-pagina = stripslashes($row['pagina']);
$url = stripslashes($row['url']);
echo"<a href="$url">$nome-pagina</a><br/>";
}
[/php]
Come risultato ottengo questo:
[php]
<a href="pagina-uno.html">Pagina uno</a>
<a href="pagina-due.html">Pagina due</a>
<a href="pagina-tre.html">Pagina tre</a>
[/php]
A questo punto riscrivo il codice che mostra i contenuti della pagina e nasce il problema dell' ID
[php]
$idpagina= $_GET['page'];
echo"Questa pagina mostra il numero " . $_GET['page'];
$query = mysql_query("SELECT * FROM pagine WHERE id = '$idpagina'");
[/php]
Infatti come potete ben notare l'ID si perde nella trasformazione da php ad html.
Come posso risolvere?
Da notare bene che non voglio modificare
<a href="pagina-uno.html">Pagina uno</a> in <a href="pagina-ID.html">Pagina uno</a>
Per me è importante recuperare l'id, perhè per esempio se scrivo
[php]
$idpagina= $_GET['page'];
echo"Questa pagina mostra il numero " . $_GET['page'];
$query = mysql_query("SELECT * FROM pagine WHERE url = '$url'");
[/php]
Può nascere il problema che 2 url siano uguali e quindi si caricherebbe una pagina errata.
Attendo con speranza i vostri consigli.
Grazie