salve a tutti, sto cercando di documentarmi il più possibile ma non ne vengo a capo, non riesco a far funzionare una chiamata ajax per modificare il valore di una variabile presente nel mio database.
ho una tabella con un elenco di utenti, ad ogni utente è associata una piccola immagine che indica se l'account è attivo o disattivo, al click di questa immagine voglio permettere la modifica dello stato, se un account è attivo al click lo disattivo e viceversa, tutto questo tramite ajax.
posto un po di codice:
la pagina continua con la creazione della tabella ed alla fine, l'ultima colonna della tabella è quella dello stato:
in base allo stato mostro l'immagine attivo/disattivo.
questa è la pagina php "ajax_stato.php" chiamata dallo script:
la funzione cambiastato funziona al 100% perche se la chiamo da codice effettua il suo lavoro.
dove commetto errori?
grazie mille
ho una tabella con un elenco di utenti, ad ogni utente è associata una piccola immagine che indica se l'account è attivo o disattivo, al click di questa immagine voglio permettere la modifica dello stato, se un account è attivo al click lo disattivo e viceversa, tutto questo tramite ajax.
posto un po di codice:
PHP:
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$(".stato").click(function()
{
var user = $(this).parent("td").attr('id');
$.ajax(
{
url: "inc/ajax_stato.php",
type: "POST",
data: { userid : user },
dataType: "html",
success:function(html)
{
$( ".stato" ).html(html);
},
error: function()
{
alert("ERRORE nella chiamata ajax!!!");
}
});
});
});
</script>
la pagina continua con la creazione della tabella ed alla fine, l'ultima colonna della tabella è quella dello stato:
HTML:
if ($row['attivo'] == 't')
{
echo '<input class="stato" type="image" src="images/attivo.png" alt="attivo"></input></td>';
}else{
echo '<input class="stato" type="image" src="images/disattivo.png" alt="disattivo"></input></td>';
}
in base allo stato mostro l'immagine attivo/disattivo.
questa è la pagina php "ajax_stato.php" chiamata dallo script:
PHP:
<?php
// includo il file con la lista delle funzioni di utilità
require_once 'inc/user.php';
//recupero l'id dell'utente via POST
$userid = $_POST['userid'];
//chiamo la funzione per cambiare lo stato e
//verifico il risultato
$stato = cambiaStato($userid);
//se è falso c'è stato qualche errore
if ($stato == false)
{
echo 'alert("ERRORE: non posso cambiare lo stato!");';
}
else if ( $stato == 'attivo')
{
echo '<input class="stato" type="image" src="images/attivo.png" alt="attivo"></input>';
}
else if ( $stato == 'disattivo')
{
echo '<input class="stato" type="image" src="images/disattivo.png" alt="disattivo"></input>';
}
?>
la funzione cambiastato funziona al 100% perche se la chiamo da codice effettua il suo lavoro.
dove commetto errori?
grazie mille