Hola, que tal?
Antes que nada, en vez de utilizar etiqueta
<?, utiliza ésta
<?php.
Luego, probaste con hacer un ALERT a la variable para ver que te devuelve?
Código PHP:
Ver original<?php
$id = $_SESSION['id'];
if (isset($_POST['share'])) {
echo "<script language='javascript'>alert('".alert($_POST['share'])."');</script>";
if($_POST['share']=="ON"){
$sql = "UPDATE usuarios SET comparte = '1' WHERE id = '".$id."'";
$_SESSION['comparte'] = 1;
echo "cambiado a si compartir";
}
if($_POST['share']=="OFF"){
$sql = "UPDATE usuarios SET comparte = '0' WHERE id = ".$id."'";
$_SESSION['comparte'] = 0;
echo "cambiado a NO compartir";
}
}
Fijate, si te devuelve bien el valor del ALERT tendrías que probar en vez de poner dos IF, probá con un ELSE.
Suerte.