Foros del Web » Programando para Internet » Jquery »

ayuda con jquery por favooorrr

Estas en el tema de ayuda con jquery por favooorrr en el foro de Jquery en Foros del Web. hola a todos, no se si este es el sitio mas adecuado para exponer una consulta sobre jquery, pero no sabia donde ponerla. os pongo ...

  #1 (permalink)  
Antiguo 13/01/2010, 20:29
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
ayuda con jquery por favooorrr

hola a todos, no se si este es el sitio mas adecuado para exponer una consulta sobre jquery, pero no sabia donde ponerla.
os pongo el codigo para que lo veais:

<?session_start();?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<meta name="tipo_contenido" content="text/html;" http-equiv="content-type" charset="utf-8">
<title>Untitled</title>
<link rel="STYLESHEET" type="text/css" href="./librerias/style.css">
<script src="./js/jquery-1.3.2.min.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(function(){

$("#grabar_permisos").click(function(){
id_album=$("#id_album").val();
id_destino=$("#id_destino").val();
permisos_select=$("#permisos_select").val();

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/cambiar_permisos.php',
type: 'post',
data: 'id_album='+id_album+'&id_destino='+id_destino+'&p ermisos_select='+permisos_select,

success: function(datos){
$("#permisos_cambiados").html(datos);

}

});
});

});

</script>

</head>
<body>
<br>
<?include ("./cabezera2.php");
extract ($_GET);?>
<table border=0 align="center" width="750" class="lista_albumes_tabla">
<td>


<?
include ("./librerias/conectar_bd.php");

//Comprobamos si tengo permiso para ver los albumes de esta persona
$miid=$_SESSION["miid"];

$permiso=mysql_query("select * from favoritos where id_usuario = '$id' and (id_amigo_fav='$miid' or id_favoritos='$miid')");
while ($row=mysql_fetch_array($permiso)){
$id_amigo_fav=$row[id_amigo_fav];
$id_favoritos=$row[id_favoritos];
}

if ($id_favoritos!=0){
$permiso_usuario="amigos";
}

if ($id_amigo_fav!=0){
$permiso_usuario="favoritos";
}












$sql=mysql_query("select * from fotos where id_destino = '$id' group by id_album having id_album!=0 order by fecha desc");
while ($row=mysql_fetch_array($sql))
{

$id_foto=$row[id_foto];
$principal=$row[principal];
$id_album=$row[id_album];
$id_destino=$row[id_destino];
$album=utf8_decode($row[album]);
$fecha=explode("-",$row[fecha_subida]);
$permisos=$row[permisos];
$imgsize=getimagesize('./imagenes/fotos/' . $id_destino . '/thumb/' . $principal . '.jpg');
$anchura=$imgsize[0];
$altura=$imgsize[1];



if ($permisos=="todos" or $permisos==$permiso_usuario or $_SESSION["miid"]==$id_destino){

?>

<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<?if ($altura<$anchura){?>
<a href="./ver_album.php?id=<?echo ("$id")?>&id_album=<?echo ("$id_album")?>&album=<?echo ("$album")?>"><img style="border:0" width="140" src=<?echo ('./imagenes/fotos/' . $id_destino . '/thumb/' . $principal . '.jpg');?>></a>
<?}else{?>
<a href="./ver_album.php?id=<?echo ("$id")?>&id_album=<?echo ("$id_album")?>&album=<?echo ("$album")?>"><img style="border:0" height="140" src=<?echo ('./imagenes/fotos/' . $id_destino . '/thumb/' . $principal . '.jpg');?>></a>
<?}?>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td><?echo $album;?>, <?echo ("$fecha[2]". "/" ."$fecha[1]". "/" ."$fecha[0]");?></td></tr>

<?if ($_SESSION["miid"]==$id_destino){?>
<tr><td>Share with &nbsp;<select name="permisos_select[]" id="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
<?echo $id_album;?>
<?echo $id_destino;?>
<tr><td><input type="button" name="grabar_permisos[]" id="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="text" name="id_album[]" id="id_album" value="<?echo $id_album;?>"></td></tr>
<tr><td><input type="hidden" name="id_destino[]" id="id_destino" value="<?echo $id_destino;?>"></td></tr>

<tr><td><div name="permisos_cambiados" id="permisos_cambiados"></div></td></tr>
<?echo $permisos;?>
<?}?>
</table>

</td>
</table>
</td>
</table>

<?}}?>

</td>
</table>
<?mysql_close($conexion);?>
</body>
</html>


como veis es un bucle que saca unos albumes de fotos, el problema esta en que no se como crear un array de albumes y pasarlo por jquery, y que solo cambien los permisos del album que yo seleccione.
  #2 (permalink)  
Antiguo 14/01/2010, 01:58
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Tema movido desde javascript
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 14/01/2010, 05:06
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

no entendí bien

ejecuta eso y copiá el código html que se genera y publicá eso, asi nos ahorras tiempo para interpretar lo que hace tu script php jeje o por ahi el que te puede ayudar no entiende php y pierdes oportunidad jeje total jquery no puede hacer nada en el código php
  #4 (permalink)  
Antiguo 14/01/2010, 07:49
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Lo mismo digo. Mejor evitar el codigo fuente de PHP. Interpretalo en algun navegador, y volvelo a postear. En todo caso, dentro de cajitas de estas, que organizan la visual:

Cita:
$(document).ready(function(){

$("#grabar_permisos").click(function(){
id_album=$("#id_album").val();
id_destino=$("#id_destino").val();
permisos_select=$("#permisos_select").val();

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/cambiar_permisos.php',
type: 'post',
data: 'id_album='+id_album+'&id_destino='+id_destino+'&p ermisos_select='+permisos_select,

success: function(datos){
$("#permisos_cambiados").html(datos);

}

});
});

});
  #5 (permalink)  
Antiguo 19/01/2010, 15:11
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

no he entendido muy bien lo que quereis que haga, ejecuto ese fichero en el navegador y le doy a ver codigo fuente y posteo eso? ahh perdonad porque haya tardado tanto en responder al mensaje, no he podido conectarme antes.
  #6 (permalink)  
Antiguo 19/01/2010, 16:50
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Cita:
ejecuto ese fichero en el navegador y le doy a ver codigo fuente y posteo eso?
Exacto. A raíz de esto estas imprimiendo algo, y estaría bueno verlo ya impreso:
Cita:
//Comprobamos si tengo permiso para ver los albumes de esta persona
$miid=$_SESSION["miid"];

$permiso=mysql_query("select * from favoritos where id_usuario = '$id' and (id_amigo_fav='$miid' or id_favoritos='$miid')");
while ($row=mysql_fetch_array($permiso)){
$id_amigo_fav=$row[id_amigo_fav];
$id_favoritos=$row[id_favoritos];
}

if ($id_favoritos!=0){
$permiso_usuario="amigos";
}

if ($id_amigo_fav!=0){
$permiso_usuario="favoritos";
}












$sql=mysql_query("select * from fotos where id_destino = '$id' group by id_album having id_album!=0 order by fecha desc");
while ($row=mysql_fetch_array($sql))
{

$id_foto=$row[id_foto];
$principal=$row[principal];
$id_album=$row[id_album];
$id_destino=$row[id_destino];
$album=utf8_decode($row[album]);
$fecha=explode("-",$row[fecha_subida]);
$permisos=$row[permisos];
$imgsize=getimagesize('./imagenes/fotos/' . $id_destino . '/thumb/' . $principal . '.jpg');
$anchura=$imgsize[0];
$altura=$imgsize[1];



if ($permisos=="todos" or $permisos==$permiso_usuario or $_SESSION["miid"]==$id_destino){

?>
Dicho sea de paso, la sintaxis php puede mejorarse:
_esto <?echo ("$id_album")?>
_por esto <?php echo ("$id_album") ?> // con espacio antes y despues cerrar y abrir.

Cita:
como veis es un bucle que saca unos albumes de fotos, el problema esta en que no se como crear un array de albumes y pasarlo por jquery, y que solo cambien los permisos del album que yo seleccione.
El problema es pasar información desde PHP a javascript? No entiendo. Por favor seleccioná lo fundamental del codigo, y replantea el problema.

Otra cosa. Por que usas corchetes aca? name="grabar_permisos[]"
  #7 (permalink)  
Antiguo 21/01/2010, 07:08
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

ante todo agradeceros el interes por colaborar con mi problema, bueno este es el codigo que me genera el navegador, sigue siendo muy largo.

cuando se ejecuta la pagina salen fotos que representan a un album(al estilo facebook vaya), cada foto tiene un boton compartir, para compartir con todo el mundo o con tus amigos solo.
lo que quiero es que cuando presione de compartir por ejemplo solo el album numero 3 con mis amigos, que jquery sepa que estoy presionando el boton del album numero 3.
jquery te captura los objetos por su id, pero cada album que sale en pantalla debe tener su propia id, para luego al pasar la funcion a jquery, que sepa a que album le tiene que dar los permisos.
perdon por extenderme tanto . 1 saludo y gracias.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<meta name="tipo_contenido" content="text/html;" http-equiv="content-type" charset="utf-8">
<title>Untitled</title>
<link rel="STYLESHEET" type="text/css" href="./librerias/style.css">
<script src="./js/jquery-1.3.2.min.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(function(){

$("#grabar_permisos").click(function(){



id_album=$("#id_album").val();
album=$("#album").val();
id_destino=$("#id_destino").val();
permisos_select=$("#permisos_select").val();

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/cambiar_permisos.php',
type: 'post',
data: 'id_album='+id_album+'&id_destino='+id_destino+'&p ermisos_select='+permisos_select+'&album='+album+' &prueba='+prueba,

success: function(datos){
$("#permisos_cambiados").html(datos);

}

});
});

});

</script>

<body>
<table border=0 align="center" width="750" class="lista_albumes_tabla">
<td>



<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=5&album=arian"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/45.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>arian, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select" id="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
5
<tr><td><input type="button" name="grabar_permisos" id="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" id="id_album" value="5"></td></tr>
<tr><td><input type="hidden" name="id_destino" id="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" id="album" value="arian"></td></tr>
<tr><td><div name="permisos_cambiados" id="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=4&album=feria 2005"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/37.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>feria 2005, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select" id="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
4
<tr><td><input type="button" name="grabar_permisos" id="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" id="id_album" value="4"></td></tr>
<tr><td><input type="hidden" name="id_destino" id="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" id="album" value="feria 2005"></td></tr>
<tr><td><div name="permisos_cambiados" id="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=3&album=confortel"><i mg style="border:0" width="140" src=./imagenes/fotos/50/thumb/28.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>confortel, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select" id="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
3
<tr><td><input type="button" name="grabar_permisos" id="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" id="id_album" value="3"></td></tr>
<tr><td><input type="hidden" name="id_destino" id="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" id="album" value="confortel"></td></tr>
<tr><td><div name="permisos_cambiados" id="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>







</td>
</table>

</body>
</html>
  #8 (permalink)  
Antiguo 21/01/2010, 07:19
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Prometo que en las próximas horas lo analizo. Pero sería mucho mejor tener una version online para pispear. Y si publicas un enlace?
  #9 (permalink)  
Antiguo 21/01/2010, 18:21
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

pues te daria la direccion pero no esta en un servidor esta en mi ordenador, es decir lo que tengo montado es mi servidor local con xampp, lo que si puedo mandarte es una captura de lo que yo veo, por si asi te haces mejor la idea de lo que digo.
  #10 (permalink)  
Antiguo 21/01/2010, 19:16
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

En abstracto, y sin leer tu codigo, te cuento como lo hago yo.

Tengo un album llamado fotos, ramificado en subdirectorios. Y con una función PHP leo los las fotos que haya en X directorio. Como se que directorio mostrar? Bueno, es igual que en Facebook: por variables GET.

Por ejemplos. Llamo así a mi pagina: album.php?album=304

Con esto, el PHP sabe que album de fotos mostrar: el 304, que corresponde a tal persona.

En fin: la variable "album", o como quieras llamarla, está siempre presente y diciendo en donde estamos. Te sirve?
  #11 (permalink)  
Antiguo 21/01/2010, 19:21
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Cita:
como veis es un bucle que saca unos albumes de fotos, el problema esta en que no se como crear un array de albumes y pasarlo por jquery, y que solo cambien los permisos del album que yo seleccione.
En relación a esto: si un bucle lee los nombres de los álbum y hace hace un array... deberías publicar solo ese fragmento de código :lol: . No, en serio. Cuesta encontrar el punto en este post.

Yo veo que tenes incorporado lo que te decía en el mensaje previo:

Cita:
<a href="./ver_album.php?id=50&id_album=3&album=confortel">
Tenes un id para cada album. Ahora... tenes un array? Entonces lo iteras con each. Eso es lo que necesitas?

Vos cargas solo los nombres de los álbum o cargas de una sola vez las fotos de todos? Porque no veo que haya problema en tener el id de un albun en particular. Cual es el problema?
  #12 (permalink)  
Antiguo 22/01/2010, 04:55
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

para saber en que album se le esta dando permisos tenes que ir hacia la tabla que contiene el boton que haces click y desde ahi buscar los campos con los valores

primero que nada tenes id repetidos, creá id en los input que no se repita por ej concatenando 'id_album' con el valor, si lo usas solo para obtener los valores borralo porque no se necesita, en el código que te paso borré los id


Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<meta name="tipo_contenido" content="text/html;" http-equiv="content-type" charset="utf-8">
<title>Untitled</title>
<link rel="STYLESHEET" type="text/css" href="./librerias/style.css">
<script src="./js/jquery-1.3.2.min.js" type="text/javascript"></script> 

<script type="text/javascript">

$(document).ready(function(){

$("input[name^=grabar_permisos]").click(function(){

tabla = $(this).parents('table');
id_album = tabla.find('input[name=id_album]').val();
album = tabla.find('input[name=album]').val();
id_destino = tabla.find('input[name=id_destino]').val();
permisos_select = tabla.find('select[name=permisos_select]').val();

alert ("ID album "+id_album+" album "+album+" ID destino "+id_destino+" permisos select "+permisos_select);

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/cambiar_permisos.php',
type: 'post',
data: 'id_album='+id_album+'&id_destino='+id_destino+'&p ermisos_select='+permisos_select+'&album='+album+' &prueba='+prueba,

success: function(datos){
$("#permisos_cambiados").html(datos);

}

});
});

});

</script>

<body>
<table border=0 align="center" width="750" class="lista_albumes_tabla">
<td>



<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=5&album=arian"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/45.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>arian, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
5
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="5"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="arian"></td></tr>
<tr><td><div name="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=4&album=feria 2005"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/37.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>feria 2005, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
4
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="4"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="feria 2005"></td></tr>
<tr><td><div name="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table id="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=3&album=confortel"><i mg style="border:0" width="140" src=./imagenes/fotos/50/thumb/28.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>confortel, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
3
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="3"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="confortel"></td></tr>
<tr><td><div name="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table> 
  #13 (permalink)  
Antiguo 22/01/2010, 06:44
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Que buen ojo, Dany_s!
  #14 (permalink)  
Antiguo 04/02/2010, 10:56
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Dany_s muchas gracias por el codigo, funciona exactamente como queria, perdona que no haya respondido antes, pero estaba liado con una mudanza, me tengo que mirar el tema de parent y el find porque no sabia ni que existia.
una cosa, si cada album que se muestra en pantalla tuviese un div que fuera el que muestra el resultado de haber cambiado el permiso del album, como lo harias para que jquery supiese seleccionar en que div tiene que poner el resultado? porque ahora mismo cuando cambio el permiso me sale escrito el resultado en todos los albumes, puesto que el div se llama en todos los albumes igual. me entiendes? gracias
  #15 (permalink)  
Antiguo 04/02/2010, 11:20
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

cambiale name por class="permisos_cambiados"

y en success
$("#permisos_cambiados").html(datos);

por

tabla.find('div.permisos_cambiados').html(datos);


fijate no lo probé
  #16 (permalink)  
Antiguo 04/02/2010, 18:42
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Cita:
Iniciado por Dany_s Ver Mensaje
cambiale name por class="permisos_cambiados"

y en success
$("#permisos_cambiados").html(datos);

por

tabla.find('div.permisos_cambiados').html(datos);


fijate no lo probé
no me va dani, lo he probado pero siguen modificandose todos los divs de golpe, como si le hubiera cambiado los permisos a todos los albumes al mismo tiempo, voy a
probar algunas cosas, si se te ocurre algo te agradeceria mucho tu ayuda.
  #17 (permalink)  
Antiguo 04/02/2010, 18:48
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Por que no? Tendría que funcionar perfecto, cambiando un par de cositas:

Cita:
$("table").find('div#permisos_cambiados').html(dat os);
Se está seleccionando un elemento único. No hay margen de error. Como lo estas probando?

Por cierto, en el codigo que posteaste arriba se repite muuchas veces el id: grabar_permisos, siendo que tiene que ser único en toda la pagina. COmo lo estás manejando?

Ah! Y el div permisos_cambiados también se repite una y otra vez. Así no puede haber identificadores únicos! Ponele un numero a cada uno:
Cita:
<div name="permisos_cambiados" id="permisos_cambiados1"></div>
<div name="permisos_cambiados" id="permisos_cambiados2"></div>
etc.
  #18 (permalink)  
Antiguo 05/02/2010, 08:56
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

perdón estaba buscando table con parents y llegaba hasta la tabla contenedora, ahora arregle para que llegue hasta la tabal con clase 'estilo_comentarios'
tenes muchos id repetidos fijate que arregle id='estilo_comentarios' por class='estilo_comentarios' lo mismo que a permisos_cambiados

Código HTML:
<html>
<head>
<meta name="tipo_contenido" content="text/html;" http-equiv="content-type" charset="utf-8">
<title>Untitled</title>
<link rel="STYLESHEET" type="text/css" href="./librerias/style.css">
<script src="http://code.jquery.com/jquery-latest.js"></script>

<script type="text/javascript">

$(document).ready(function(){

$("input[name^=grabar_permisos]").click(function(){

tabla = $(this).parents('table.estilo_comentarios');
id_album = tabla.find('input[name=id_album]').val();
album = tabla.find('input[name=album]').val();
id_destino = tabla.find('input[name=id_destino]').val();
permisos_select = tabla.find('select[name=permisos_select]').val();

alert ("ID album "+id_album+" album "+album+" ID destino "+id_destino+" permisos select "+permisos_select);


$(tabla).find(".permisos_cambiados").html('ok');

});

});

</script>

<body>
<table border=0 align="center" width="750" class="lista_albumes_tabla">
<td>



<table class="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=5&album=arian"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/45.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>arian, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
5
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="5"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="arian"></td></tr>
<tr><td><div class="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table class="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=4&album=feria 2005"><img style="border:0" width="140" src=./imagenes/fotos/50/thumb/37.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>feria 2005, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
4
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="4"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="feria 2005"></td></tr>
<tr><td><div class="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table>


<table class="estilo_comentarios" align="left" cellspacing="9">
<td>
<table border=0 cellspacing="0" cellpadding="0" width="350" >
<td class="lista_albumes_td_foto" rowspan="4" width="150" height="140" align="center">

<a href="./ver_album.php?id=50&id_album=3&album=confortel"><i mg style="border:0" width="140" src=./imagenes/fotos/50/thumb/28.jpg></a>

</td>
<td height="140" class="lista_albumes_td_datos">
<table>
<tr><td>confortel, 20/12/2009</td></tr>

<tr><td>Share with &nbsp;<select name="permisos_select">

<option value="todos">all</option>
<option value="amigos">friends</option>
<option value="favoritos">favourites</option>


</select></td></tr>
3
<tr><td><input type="button" name="grabar_permisos" value="grabar"></td></tr>
<tr><td><input type="hidden" name="id_album" value="3"></td></tr>
<tr><td><input type="hidden" name="id_destino" value="50"></td></tr>
<tr><td><input type="hidden" name="album" value="confortel"></td></tr>
<tr><td><div class="permisos_cambiados"></div></td></tr>

</table>

</td>
</table>
</td>
</table> 
  #19 (permalink)  
Antiguo 05/02/2010, 08:57
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

mayid, no es eficiente buscar un div con id como div#permisos_cambiados, solo sirve si es por clase div.permisos_cambiados
  #20 (permalink)  
Antiguo 05/02/2010, 09:28
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Eso para el caso que estamos viendo, claro.
  #21 (permalink)  
Antiguo 05/02/2010, 20:32
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Cita:
Iniciado por Dany_s Ver Mensaje
mayid, no es eficiente buscar un div con id como div#permisos_cambiados, solo sirve si es por clase div.permisos_cambiados
pues tengo que agredeceros a todos vuestra ayuda e interes por esta duda mia, pero muy especialmente a ti Dany_s, eres un maquina, en serio, no acabo de entender todavia muy bien el funcionamiento pero la cosa es que funciona a la perfeccion. te debo una wei.
  #22 (permalink)  
Antiguo 06/02/2010, 08:40
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Sería buenísimo que despejes tus dudas aqui mismo.

Lo del html y los identificadores unicos lo tenes realmente claro? Es importante diferenciar el atributo "id" de un atributo "class"?
  #23 (permalink)  
Antiguo 11/02/2010, 10:49
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

hola buenas de nuevo, tengo un problema al intentar traer informacion a un div con jquery, que a su vez esta dentro de otro div, me explico:
he puesto este trozo de codigo solo, porque es el que creo que es suficiente para ver el problema. yo medianta jquery/ajax traigo informacion a un div (#panel_central), en esa informacion hay tambien apartados con los que puedo interactuar con jquery por lo tanto hay otros div(div class="escribir_respuesta"), pero cuando ejecuto el primer div (#panel_central) ya no puedo interactuar con la pagina que me he traido, sabeis por que puede ser?
perdonad las molestias.


archivo principal (inicio.php)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Ficha</title>
<link rel="STYLESHEET" type="text/css" href="./librerias/style.css">
<meta name="tipo_contenido" content="text/html;" http-equiv="content-type" charset="utf-8">
<script type="text/javascript" src="./js/jquery-1.3.2.min.js"></script>
<script>

$(document).ready(function(){
$("input[name=boton_comentario]").click(function(){

tabla = $(this).parents('table#tabla_muro_principal');
comentario_principal = tabla.find('input[name=comentario_principal]').val();

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/comentario_inicio.php',
type: 'POST',
data: 'comentario_principal='+comentario_principal,

success: function(datos){
tabla.find('div.escribir_comentario').prepend(dato s);

}

});
});


$("a.responder").click(function(evento){
tabla = $(this).parents('table#tabla_responder');
tabla.find('div.escribir_respuesta').css("display" , "block");
evento.preventDefault();
});

});



<div id="panel_central">




archivo2 (respuesta.php)

<tr><td></td><td><div class="escribir_respuesta2"></div></td></tr>
<tr><td></td><td><div class="escribir_respuesta" style="display:none;"><table><tr><td><img width="40" src=<?echo ('./imagenes/fotos/' . $_SESSION["miid"] . '/perfil/perfil.jpg');?>></td><td><?echo $_SESSION["user"];?></td></tr><tr><td></td><td><textarea class="textarea_respuesta" cols="18"></textarea><input type="button" name="boton_respuesta" value="aceptar"></td></tr></table></div></td></tr>
<tr><td></td><td><input type="hidden" name="numero_id" value="<?echo $numero_id;?>"></td></tr>
<tr><td></td><td><input type="hidden" name="id_destino" value="<?echo $id_destino;?>"></td></tr>
<tr><td></td><td><input type="hidden" name="destino" value="<?echo $destino;?>"></td></tr>
<tr><td></td><td align="right"><a href="#" class="responder">Comentar</a></td></tr>
  #24 (permalink)  
Antiguo 11/02/2010, 10:58
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Proba con async: true

Esto le da tiempo al nuevo html para que se ubique antes de que ejecutes nada sobre ese html.

Cita:
$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/comentario_inicio.php',
type: 'POST',
data: 'comentario_principal='+comentario_principal,
async: true,
success: function(datos){
tabla.find('div.escribir_comentario').prepend(dato s);

}
  #25 (permalink)  
Antiguo 16/02/2010, 19:58
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Cita:
Iniciado por mayid Ver Mensaje
Proba con async: true

Esto le da tiempo al nuevo html para que se ubique antes de que ejecutes nada sobre ese html.

pues no se si eso me resutara, no se, asi leido me resulta un poco raro, voy a probar y te comento, vale?
  #26 (permalink)  
Antiguo 17/02/2010, 10:13
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: ayuda con jquery por favooorrr

Lo explico un poco mas: cuando ejecutas codigo, este se lee de abajo para arriba. Muy muy rapido. Y si en el codigo hay una llamada a ajax, se ejecuta la llamada. Pero se sigue leyendo hacia abajo. Es decir, quizas ya estés en el paso siguiente cuando todavía la llamada no volcó el nuevo html en el DOM. Entonces, usando async: true prevenís que se ejecute el resto del codigo antes de renovar el DOM. Recién se sigue el curso habitual cuando ajax terminó te modificar el DOM, añadiendo lo nuevo. Y por lo tanto, recién ahora se puede modificar lo nuevo.
  #27 (permalink)  
Antiguo 11/03/2010, 18:53
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Cita:
Iniciado por Dany_s Ver Mensaje
mayid, no es eficiente buscar un div con id como div#permisos_cambiados, solo sirve si es por clase div.permisos_cambiados
hola buenas Dany_s, recurro a ti porque la ultima vez que lo hice diste en el clavo con lo que queria. he buscado esto por google pero no doy con lo que quiero.
lo que estoy intentando es desde una pagina, llamar un script alojado en otra pagina con jquery, es decir este script se mostraria en una capa de la pagina original, pero la duda es la siguiente, si el script que me estoy trayendo de la otra pagina tiene un boton, este no me funciona.
lo que quiero decir si llamo a una funcion mediante jquery y esa funcion o pagina tiene botones para llamar a otras funciones, no me funcionan.
bueno de momento no te pego codigo a espera de que respondas, si no sabes de lo que te hablo te pondre un codigo lo mas claro posible, gracias.
  #28 (permalink)  
Antiguo 12/03/2010, 04:27
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

si posteas un código sencillo estaria bueno
  #29 (permalink)  
Antiguo 12/03/2010, 13:33
 
Fecha de Ingreso: enero-2010
Mensajes: 56
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: ayuda con jquery por favooorrr

Cita:
Iniciado por Dany_s Ver Mensaje
si posteas un código sencillo estaria bueno
bueno este es el codigo de la pagina principal, donde salen una lista de amigos, el tema es cuando le doy al select, para que solo se vean mis favoritos, esto lo hago con jquery, desaparece la lista anterior y me sale una nueva con los favoritos.
si desde esta lista de favoritos pincho el checkbox para quitar a un usuario como favorito (es decir usando otra vez jquery) no me funciona. solo me funcionan los links de mandar mensaje y eliminar al usuario, que lo hace por php normal.
jquery me funciona solo si lo estoy usando como pagina principal, si me he traido una funcion con jquery que a su vez tiene elementos que utilizan jquery, estos ya no funcionan. me entiendes?



$(document).ready(function(){

$("#select_amigos").change(function(){
if ($("#select_amigos").val()=="amigos"){

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/ver_amigos_select.php',
type: 'POST',
//data: 'etiqueta='+etiqueta+'&id_destino='+id_destino+'&i d_foto='+id_foto,

success: function(datos){
$("#panel_central").html(datos);

}

});
}

if ($("#select_amigos").val()=="favoritos"){

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/ver_favoritos_select.php',
type: 'POST',
//data: 'etiqueta='+etiqueta+'&id_destino='+id_destino+'&i d_foto='+id_foto,

success: function(datos){
$("#panel_central").html(datos);

}

});
}

});







$("input[name=chequeo]").click(function(){


tabla = $(this).parents('table#tabla_amigos');
id_favoritos = tabla.find('input[name=id_favoritos]').val();
apodo = tabla.find('input[name=apodo]').val();
check=tabla.find('input[name=chequeo]').val();

if (check==''){ //comprobamos si el checkbox esta seleccionado o no


$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/quitar_favoritos.php',
type: 'post',
data: 'id_favoritos='+id_favoritos+'&apodo='+apodo,

success: function(datos){

tabla.find('div.enviar_a_favoritos').html(datos);
}

});

}else{

$.ajax({
contentType: "application/x-www-form-urlencoded",
url: './librerias/agregar_favorito.php',
type: 'post',
data: 'id_favoritos='+id_favoritos+'&apodo='+apodo,

success: function(datos){

tabla.find('div.enviar_a_favoritos').html(datos);
}

});

}

});

});

</script>
</head>
<body>


<table align=center width=460 border=0>
<td>
<table>
<td>
View <select id="select_amigos" name="select_amigos">
<option value="amigos">friends</option>
<option value="favoritos">favorites</option>
<option value="bloqueados">bloqued</option>
</select>
</td>
</table>
<div id="panel_central">




<table border=0 class="filas_contactos">
<tr><td colspan="2" class="letra_nombre_contacto">Violeta De Haro Bravo</td></tr>

<tr><td width="80" height="80">

<table>
<tr><td><a href="./ficha_generales.php?id=1"><img width="80" height="80" style="border:0" src=./imagenes/fotos/no.jpg></a></td></tr>
</table>

</td>
<td>




<table id="tabla_amigos" border=0>





<tr><td><input type="checkbox" name="chequeo" checked/></td><td align="left" class="letra_opciones_contacto">favorite</td></tr>
<tr><td><div class="enviar_a_favoritos"></td></tr>
<tr><td><input type="hidden" name=id_favoritos value="1"></td></tr>
<tr><td><input type="hidden" name=apodo value="Violeta De Haro Bravo"></td></tr>





<tr><td><img src="./imagenes/iconos/sobre.jpg" style="border:0" title="Enviar mensaje"></td><td class="letra_opciones_contacto"><a href="./enviar_mensaje.php?id=1&apodo=Violeta De Haro Bravo" onclick = "window.open(this.href,'','width=300,height=30 0'); return false">send message</a></td><td>&nbsp;</td></tr>


<tr><td><img src="./imagenes/iconos/eliminar.jpg" style="border:0" title="Quitar de mis favoritos"></td><td class="letra_opciones_contacto"><a href="./librerias/eliminar_contacto.php?id_favoritos=1">remove</a></td><td>&nbsp;</td></tr>
  #30 (permalink)  
Antiguo 12/03/2010, 14:19
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: ayuda con jquery por favooorrr

cambia

$("input[name=chequeo]").click(function(){

por

$("input[name=chequeo]").live('click', function(){

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:52.