Salve, visualizzo il mio sito con Ajax. Ma ho un problema di invio variabili.
Ho una pagina index.php simile a questa
Codice PHP:
<script src="navigation.js" type="text/javascript"></script>
<div id="pageContent"></div>
[url="#page1"]pagina 1[/url]
[url="#profile"]profilo[/url]
Questo è il file navigation.js
codice:
$(document).ready(function(){
checkURL();
$('a').click(function (e){
checkURL(this.hash);
});
setInterval("checkURL()",250);
});
var lasturl="";
function checkURL(hash)
{
if(!hash) hash=window.location.hash; //if no parameter is provided, use the hash value from the current address
if(hash != lasturl) // if the hash value has changed
{
lasturl=hash; //update the current hash
loadPage(hash); // and load the new page
}
}
function loadPage(url)
{
url=url.replace('#','');
$.ajax({
type: "POST",
url: "load_page.php",
data: 'page='+url,
dataType: "html",
success: function(msg){
if(parseInt(msg)!=0) //if no errors
{
$('#pageContent').html(msg);
}
}
});
}
E questa è la pagina load_page.php
codice:
<?php
if(!$_POST['page']) die("0");
$page = $_POST['page'];
include('pages/'.$page.'.php');
?>
Bene il problema è questo.. la pagina profile.php che carico tramite il link #profile dovrebbe visualizzare mediante GET dei valori... ad esempio:
Codice PHP:
<?php
$nome_utente = $_GET['user'];
if(!$_GET['user']) {
print 'Attenzione, devi inserire il nome di un utente';
}
else
{
print $nome_utente;
}
?>
Ho provato quindi a sostituire nella pagina index.php il link in questo modo
profile
Ma questo non funziona perché la pagina load_page.php non trova - giustamente - la pagina "profile?user=prova.php"...
Come devo fare quindi per inviare questa variabile GET alla pagina profile.php a partire da un link nella pagina index.php??
grazie mille!