tengo un problema con este codigo, les explico yo muestro los resultados obtenidos con un while y a la ves lo pagino, dentro del while genero una liga la cual es para consultar pero a esta liga quiero pasarle parametros con ajax y query y atra ves de el generar la consulta dependiendo el valor que aya llevado la liga y asi no recargar la pagina y mostrar los resultados en una ventana simple modal , lo cual logro pero fuera del while.
la liga que estoy ocupando es esta
<a href="#" name="<?php echo $mu="paupau"; ?>" class="sample1 osx demo" >click aki</a>
tube que darle la propieda de name al enlace y ponerle un valor para que atra vez de ajax cogiera el valor al pulsar el enlace, cuando meto el enlace dentro del while solo me toma el ultimo valor
index.php codigo que ocupo para mostrar los resultados
<?php
// Instanciamos el objeto para paginar
require_once 'PHPPaging.lib.php';
// Abrimos la conexión al servidor MySQL
$link = mysql_connect('localhost', 'root', '');
mysql_select_db('clubpca3', $link);
// Instanciamos, indicando el recurso de conexión
$paging = new PHPPaging($link);
if($tipo==1){
$paging->agregarConsulta("select * FROM socios WHERE id LIKE '%".$buscar."%' ");
// Ejecutamos la paginación
$paging->ejecutar();
if($paging->numRegistrosMostrados() >= 1) {
$contador=1;
while($row=$paging->fetchResultado())
{
//saco el tipo de socio
conectar();
$queEmp2 = mysql_query("SELECT nombre FROM tipo_socios where id_tiposocio='$row[1]' ");
$rowEmp2 = mysql_fetch_assoc($queEmp2);
$nombre= $rowEmp2['nombre'];
desconectar();
echo "
<tbody>
<tr>
<td>$row[2] $row[3] $row[4]</td>
<td>$nombre</td>
<td>--</td>
<td>
<a href=# name='$mu=$row[0]' class='sample1' >BUSCAR</a>
</td>
</tr>
</tbody>";
$contador++;
}
} else{
echo"no hay registros";
}
}
?>
script que ocupo para pasar parametros
[code=php]<script language="javascript" type="text/javascript">
$('.sample1').click( function() {
$.ajax({
url: 'consultar.php?action=<?php echo $contador; ?>',
success: function(data) {
$('.results').html(data);
}
});
});
</script>
consultar.php "scrip que ocupo para imprimir "
<?php
echo $_REQUEST['action'];
?>
[/code]
Mira la función que tengo,
function sPeticion( sAccion, sParametros ){
$.ajax({
url : "acciones.php?accion="+sAccion,
type : "POST",
data : sParametros,
success : function (sDatos){ eval( sDatos ); }
});
}
Y la invoco así,
sPeticion( "iniciarSesion", "txtUser="+sUser+"&txtPass="+sPass );
Y para recolectar información de la URL, estilo $_GET['variable'] en PHP, uso:
function sBuscarParametroGET( sParametro ){
var sExpReg = "[\\?&]"+sParametro+"=([^&#]*)";
var sRegEx = new RegExp ( sExpReg );
var sURL = window.location.href;
var sResultado = sRegEx.exec( sURL );
if( sResultado == null ){
return "";
}else{
return sResultado[1];
}
}
shell root lo que pasa es que ami con la funcion que tengo si me recoge las variables y me lo muestra como yo deceo pero al meterlo dentro de un while solo me coge el ultimo valor y yo lo que deceo que este dentro del while para que asi al momento que se le de click al enlace me desplique el id que se alla clikeado
oye, sera que te puedes explicar un poco mejor a ver te entiendo, quieres pasar una variable a un script en php, para que despues muestres el resultado en una ventana modal? lo que no entiendo es donde pasas la variable al script php. o cual es el rollo?
vez que en php para pasar parametros atraves de url se ase asi
<a href=modsicio2.php?id=variable>click</a>
yo es lo que quiero hacer pero con jquery para no recargar la pagina y el resultado mostrarlo en una ventana modal eso es lo de menos en que lo muestre..
ahora bien con esta funcion
<script language="javascript" type="text/javascript">
$('.sample1').click( function() {
$.ajax({
url: 'consultar.php?action=<?php echo $mu; ?>',
success: function(data) {
$('.results').html(data);
}
});
});
</script>
al momento de dar click sobre este enlace
<a href=# name='$mu=RedZer' class='sample1' >BUSCAR</a>
me imprime lo que esta en el name del enlace en este caso es una varieble de php que contiene ReDzER
ahora bien yo ese enlace lo quiero meter dentro de un while ya que asi es como muestro los registros de la bd como puse el codigo pero ahora en el name del enlace en vez de que contenga redzer quiero que ontenga los id de los registros para que asi al momento que se le de click a un enlace me muestre los campos que tenga que ver con ese id.
ahora si te entiendo mejor, lo que tu deseas es imprimir varios enlaces asi:
<a href=# name='RedZer' class='sample1' >BUSCAR</a>
<a href=# name='bomba1990' class='sample1' >BUSCAR</a>
<a href=# name='shellroot' class='sample1' >BUSCAR</a>
<a href=# name='nakp' class='sample1' >BUSCAR</a>
entonces al hacer click en cualquiera de ellos envie una variable al script y dependiendo cargue la ventana.
si es asi, pones tu while como ya lo pusiste y ademas vas a poner.
$('.sample1').click( function(event) {
event.preventDefault()
$.ajax({
url: 'consultar.php',
data: "action="+$(this).attr('name'),
success: function(data) {
$('.results').html(data);
}
});
});
Si te entendi bien, esto deberia ser suficiente para que te funcione.
gracias bomba1990 ya funciono. saludos
que tal, les escribo desde mexico, tengo un problema y espero puedan ayudarme, es algo muy similar al que plantean aqui.
la cosa es que estoy haciendo un pequeño sistema escrito en php, en este momento estoy desarrollando un modulo que genera una consulta general de una tabla en una bd que contiene información acerca de las cartas de presentación de los alumnos de una escuela, dicha tabla tiene relacion con otra tabla llamada alumno, donde se guarda toda la información personal del alumno, las tablas se relacionan gracias al id o matricula del alumno, entonces cuando genero la consulta general de la tabla carta, necesito asignarle un link a la matricula de la carta para que al momento de darle clic me muestre la información relacionada con la matricula, por ejemplo, nombre de la persona que tiene esa matricula, dirección, telefono, cosas de ese tipo.
ya logre asignarle un link al campo, pero no logro hacer que me abra la ventana modal, en este momento utilizo un javascript llamado ventana-modal-1.1.1 pero me gustaría saber si existe algun otro modo mas sencillo de lograr lo que les explico.
este es el codigo del programa que realiza la consulta
<?
$con=mysql_connect("localhost","root","12345678");
mysql_select_db("tesco",$con);
$sqlz="Select * from carta ";
$dat1=mysql_query($sqlz,$con);
echo "<center><table border=2 width=800>";
echo "<tr>";
echo "<th> MATRICULA </th>";
echo "<th> FOLIO </th>";
echo "<th> DESTINATARIO </th>";
echo "<th> PROFESION </th>";
echo "<th> PUESTO </th>";
echo "<th> DEPENDENCIA </th>";
echo "<th> ESTATUS </th>";
echo "</tr>";
while($reg1=mysql_fetch_array($dat1))
{
echo "<tr>";
echo "<td><a href='javascript:abrirVentanaVariable('index.html', 'ventana', 'Servicio1')'> $reg1[1] </a></td>";
echo "<td> $reg1[2] </td>";
echo "<td> $reg1[3] </td>";
echo "<td> $reg1[4] </td>";
echo "<td> $reg1[5] </td>";
echo "<td> $reg1[6] </td>";
echo "<td> $reg1[7] </td>";
echo "</tr>";
}
echo "</table></center>";
mysql_free_result($dat1);
mysql_close($con);
?>
te recomiendo que abras un tema nuevo explicando solo esta parte
ya logre asignarle un link al campo, pero no logro hacer que me abra la ventana modal, en este momento utilizo un javascript llamado ventana-modal-1.1.1 pero me gustaría saber si existe algun otro modo mas sencillo de lograr lo que les explico.
con forme a tu problema pueden ser varios factores ejemplo:
1.- que no estes incluyendo bien las librerias que ocupa la ventana modal
2.-error de sintaxis.
yo nunca he ocupado esa libreria que ocupas pero si eocupado otras y he pasado parametros , y tambien me he visto en problemas de que no se me abre la ventana yo lo que ago cuando me pasa eso es hacer primero pruebas sin el codigo php osea solo pongo el lo basico que se ocupa para que se genere la ventana y pongo un link cualquiera y le doy click si veo que funciona entonces obiamente mi error radicara en el php y no en la ventana modal.
si lo he hecho, y funciona bien abriendo una ventana modal, pero cuando intento implementarlo desde php no sucede nada, he buscado otras opciones, encontre jquery y ajax, pero la verdad es que no tengo idea de funcionana, la mayoria de los ejemplos solo explican como abrir la pantalla pero no como mandar las variables, crees que pueda mostrarte mi proyecto y tal vez darme una mano?
claro mandamelo
webone10@hotmail.com agregame y te muestro lo que llevo gracias
k tal mi estimado RedZer
tengo el mismo problema k comntas al inicio, con un simple modal normal sin pasar datos si lo gro mostrarlo, mi duda es como lograste que se mostrara un simple modal por registro de la bd. no se si puedas poner los archivos completos i las librerias k utilizaste por favor
si mira primeramente prueba la ventana modal por si solo luego lo mezclas con php generalmente las ventanas modales funcionan por id, en la parte de arriba esta la solucion le cuidadosamente.
ya lo revise y si me muestra una pagina modal por cada registro pero no me repeta el id de la base de datos , no se si sea por como lo estoy implementando mira:
<script type='text/javascript' src='../view/lib/jquerymodal.js'></script>
<script type='text/javascript' src='../view/lib/jquery.simplemodal.js'></script>
<script language="javascript" type="text/javascript">
//cone sto abro el simple modal al dar click
jQuery(function ($) {
// Load dialog on page load
//$('#basic-modal-content').modal();
// Load dialog on click
$('#basic-modal .basic').click(function (e) {
$('#basic-modal-content').modal({
opacity:80,
overlayCss: {backgroundColor:"#000000"}
});
return false;
});
});
</script>
-///despues e hacer la paginacion y traer los datos imprimo un link para cada modal
<td>
<div id='content'>
<div id='basic-modal'>
<a href='#' name='<?php echo $mu=$row['id_empresa']; ?>' class='basic'>Detalle</a></td>
</div>
</div>
<!-- modal content -->//aki es el contenido del modal si me muestra lo del iframe pero siempre me manda el primer registro y en el codigo fuente en html si me manda odos los registros diferentes
<div id="basic-modal-content">
<iframe frameborder="0" width='600' height='500' src='<?php echo "../view/detalle_empresa.php?emp=$id_empresa"; ?>'></iframe>
</div>
</td>
no se si estoy haciendo mal la llamada del siple modal o de las paginas o como :(