Cita: quiero saber como haria para activar el case 1
Pensalo asi: PHP devuelve una cadena de texto. O un numero. O una variable en json si quisieras.
Para no complicar las cosas, lo que necesitas es enviar un mensaje de "ok".
Cita: <?php
require_once("header.php");
$sesion = $_SESSION['id'];
$id_post = $_POST['postid'];
$id_user = $_POST['key'];
if ($id_user!=null)
{
if ($id_user==$sesion)
{
$sql = "INSERT INTO favoritos (id_post, id_usuario, fecha) VALUES ('$id_post', '$id_user', NOW())";
$rs = mysql_query($sql, $con) or die("Error al grabar un mensaje: ".mysql_error);
$ult_id = mysql_insert_id($con);
echo "ok";
}
else {echo "error";}
}
?>
Cita: $.ajax({
type: 'POST',
url: '/favoritos.post.add.php',
data: gget('postid', true) + gget('key'),
success: function(h){
switch(h.charAt(0)){
case 'error': //Error
$('.post-metadata .mensajes').addClass('error').html(h.substring(3)) .slideDown();
break;
case 'ok': //OK
$('.post-metadata .mensajes').addClass('ok').html(h.substring(3)).sl ideDown();
$('.favoritos_post').html(number_format(parseInt($ ('.favoritos_post').html().replace(".", "")) + 1, 0, ',', '.'));
break;
}
},
error: function(){
add_favoritos_agregado = false;
mydialog.error_500("add_favoritos()");
}
});
En jQuery estamos recibiendo la cadena "ok" o la cadena "error". Mismo, podriamos recibir "0" o "1". Eso, a gusto tuyo.
Por favor chequea que los condicionales en PHP funcionen de la manera en que vos necesitas que funcionen.