Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Beto Lima

[Resolvido] Passar o valor do input para o ajax

Recommended Posts

Olá pessoal, estou com um problema sério e não consigo resolver de maneira alguma.

Para alguns pode ser barbada...

 

Estou usando um paginador em ajax fornecido pelo Carlos.

http://imasters.com.br/artigo/10262/ph...pajaxpaginator/

 

Ele funciona perfeitamente pra minha necessidade.

No meu caso tenho um menu com categorias, quando clico em alguma, ao lado é carregado o conteudo daquela categoria.

Simples e sem dar refresh..

 

Agora o problema é que acima dessa minha categoria que mostrar todos os links, tenho um formzinho para busca com um único input.

 

o problema é que não consigo passar o valor dele para o ajax.

Não sei como adaptar o cód pra isso...

 

segue o cód padrão que funciona para as categorias:

 

<script>

function get(pag)

{

url="recebe.php?_pagi_pg="+pag;

ajax(url);

}

</script>

 

Como posso adaptar este script para passar o valor de uma input nesse js

sem perder o valor "_pagi_pg" e "pag"?

 

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem nao sei se entendi mto bem se nao

 

faca um novo parametro op, neste caso quando chamar a funcao js e so fazer o seguinte

 

 

//esta seria para o form

get(0,'parametro pag')

 

 

//esta para o menu

get(1,'parametro pag')

 

 

agora so falta o js

 

<script>
function get(op,pag)
switch (op){
case 0:
{url="caminhoparaoform.php?x="+pag; break;}
case 1:
{url="caminhoparaomenu.php?x="+pag; break;}
} //fim switch
ajax(url);
}
</script>

 

Lembre-se isto e so exemplo tem de colocar os valores corretos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi muito bem esse seu script.

pelo que entendi se ele for 0 vai pra tal url senão vai pra outra.

 

Não seria no meu caso. Eu preciso passar o valor de um input já em uma url entende?

 

vou postar todo meu cod aqui:

 

index.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>teste</title>
<script>
function ajax(url)
{

req = null;

if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET",url,true);
req.send(null);

} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {

req.onreadystatechange = processReqChange;
req.open("GET",url,true);

req.send();
}
}
}

function processReqChange()
{
if (req.readyState == 1) {
document.getElementById('pagina').innerHTML = 'Carregando, por favor aguarde...';
}


else if (req.readyState == 4) {


if (req.status ==200) {
document.getElementById('pagina').innerHTML = req.responseText;
} else {
alert("Houve um problema ao obter os dados:n" + req.statusText);
}
}
}	
</script>
<script>
	function pesquisa(pag)
		{
 			url="recebe.php?_pagi_pg="+pag;
			ajax(url);
		}
</script>		
</head>
<body>
		<div>
		<form id="form_funcoes">
		<input type="text" value="" name="fast_find" id="fast_find" />
		<a onclick="pesquisa(1);" href="java script:document.form_funcoes.button();">manda</a>
		</form>
		</div>
		<div id="conteudo"></div>

</body>
</html>

recebe.php

<?php 

if(!empty($_REQUEST["fast_find"]))
{
	$valor = $_REQUEST["fast_find"];

	session_start();
	
if ($_SESSION['input'] == "") {
		$_SESSION['input'] = $valor;
	}else {
		$_SESSION['input'] = $_SESSION['input'];
	}
	

// O CAMPO VALOR CONTERÁ O QUE O USUARIO DIGITOU ATÉ O MOMENTO..
require("conexao.php");

$nada = "nada encontrado";

// EXECUTA A INSTRUÇÃO SELECT PASSANDO O QUE O USUARIO DIGITOU
$_pagi_sql="select * from tabela where nome like '%".$_SESSION['input']."%' order by valor desc";
//echo $_pagi_sql;

$resultado=mysql_query($_pagi_sql,$conn) or die ("$nada");



//VERIFICA A QUANTIDADE DE REGISTROS RETORNADOS
$linhas=mysql_num_rows($resultado);

if($linhas>1){

//Estas variaveis são opcionais
$_pagi_cuantos = 2;			//quantidade de registros por pagina
$_pagi_nav_anterior = "anterior";	//string para anterior
$_pagi_nav_siguiente = "próxima";	//string para seguinte
$_pagi_nav_primera = "primeira";	//string para primeira
$_pagi_nav_ultima = "última";		//string para última
$_pagi_nav_estilo = "paginacao";	//aqui é a classe do CSS para a barra de paginação

//requeremos o arquivo que realiza todo o processo de paginação
require("paginator.inc.php");


while($l = mysql_fetch_array($_pagi_result)){
		$id 			= $l["id"];
		$nome		   = $l["nome"];

		echo utf8_encode ("<table onmouseover=\"this.style.background='#fff'\" onmouseout=\"this.style.background='#f2f2f2'\"><tr><td>
		<table align=\"left\" width=\"545px\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
		<tr><td scope=\"col\" align=\"left\" valign=\"top\"> </td>
		<td scope=\"col\" align=\"left\" valign=\"top\">
		<table align=\"left\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
		<tr><td scope=\"col\"> </td>
		<td align=\"right\">Ref: $id</td></tr>
		<tr><td colspan=\"2\">$nome</td></tr>
		</table>
		</td>
		</tr></table>
		</tr></td></table>");
}
echo "<table align='center' width='100%' border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
<tr><td align='center'>".$_pagi_navegacion."</td></tr></table>";
} 
else {
echo "<div>Nenhum produto encontrado para esta categoria.</div>";
}
}
?>

conexao.php

<?php
  // dados
  $hostname_conn = "localhost";
  $database_conn = "base"; 
  $username_conn = "root"; 
  $password_conn = "";
  $conn = mysql_pconnect($hostname_conn, $username_conn, $password_conn) or trigger_error(mysql_error(),E_USER_ERROR);
  mysql_select_db($database_conn, $conn);
?>

paginator.inc.php

<?php
/*
**----------------------------No Borrar esta sección -------------------------
**	Paginator 
**	Paginación de resultados de consultas a MySql con PHP
**
**	Versión 1.6.3
**
**	Nombre de archivo	:
**		paginator.inc.php
**
**	Autor	:
**		Jorge Pinedo Rosas (jpinedo)	<jorpinedo@yahoo.es>
**		Con la colaboración de los usuarios del foro de PHP de www.forosdelweb.com
**		Especialmente de dooky que posteó el código en el que se basa este script.	
**
**	Descripción :
**		Devuelve el resultado de una consulta sql por páginas, así como los enlaces de navegación respectivos.
**		Este script ha sido pensado con fines didácticos, por eso la gran cantidad de comentarios.	
**
**	Licencia : 
**		GPL con las siguientes extensiones:
**			 *Uselo con el fin que quiera (personal o lucrativo).
**			*Si encuentra el código de utilidad y lo usa, mandeme un mail si lo desea o deje un comentario en la página 
**			 de documentación.
**			*Si mejora el código o encuentra errores, hagamelo saber al mail indicado o deje un comentario en la página 
**			 de documentación.
**
**	Documentación y ejemplo de uso:
**		http://jpinedo.webcindario.com
**----------------------------------------------------------------------*/

/*----------------------------------------------------------------------
**	Historial:
**
**	Versión 1.0.0	(30/11/2003):	-Versión inicial.
**	Versión 1.1.0	(12/01/2004):	-Se agregó la propagación de las variables que llegan al script vía url ($_GET)
**									  en los enlaces de navegación por las páginas.
**									-Se optimizó el conteo del total de registros utilizando el COUNT(*) de MySql.
**	Versión 1.3.0	(10/08/2004):	-Se agregó la opción de limitar el número enlaces que se mostrarán en la barra 
**									 de navegación. Gracias a la recomendación de Jorge Camargo (andinistas)
**									-Se agregó la opción de elegir si se quiere mostrar los mensajes de error de mysql.
**									-Se agregó la generación de información de la página actual en una cadena que contiene
**									 el total de registros de la consulta y el primer y último registro de la página actual.
**	 Versión 1.4.0	(12/08/2004):	-Se agregó la opción de elegir qué variables se quiere propagar por url. Se ha utilizado
**									 la misma forma de hacerlo que utiliza la Clase Paginado de webstudio.
**									  (http://www.forosdelweb.com/showthread.php?t=65528).'>http://www.forosdelweb.com/showthread.php?t=65528). Gracias a la acalmación popular :)
**	 Versión 1.4.1	 (06/09/2004):	 -Corregido el bug en la propagación de variables por GET al renombrar la variable
**									  "pg" por "_pagi_pg". Esto sólo ocurre en la versión 1.4. Gracias a jean pierre m. por
**									 reportar el bug.
**	Versión 1.5.0	 (03/11/2004):	 -Se agregó la opción de elegir si se hace el conteo desde mySQL (COUNT(*)) o desde PHP (mysql_num_rows()).
**									 Esta es una de las modificaciones más importantes porque gracias a esto, ahora el script funciona para 
**									 cualquier tipo de consulta, corrigiendo una de sus principales limitaciones. Gracias a César (CDs) por 
**									 sus ganas de colaborar y su paciencia.
**	Versión 1.5.1	(16/11/2004):	 -Se cambió el nombre de las variables $desde y $hasta por $_pagi_desde y $_pagi_hasta para mantener 
**									 uniformidad y evitar conflictos.
**	Versión 1.5.2	(15/02/2005):	-Se cambió preventivamente el uso del array $GLOBALS por el array $_REQUEST con la intención de que
**									 funcione con la directiva register globals en Off. Gracias a Lorena Casas por su colaboración en la detección de
**									 este bug y en las pruebas.
**	Versión 1.6.0	(08/03/2005):	-Se reestructuró toda la parte de propagación reincluyendo el array $GLOBALS para poder propagar variables
**									 generadas en el ámbito del script.
**									-Se incluyó la opción de elegir un estilo CSS para los enlaces de la barra de navegación.
**									-Se incluyó la opción de personalizar los enlaces a la página anterior y a la siguiente. (Inspirado en la clase Paginador de WebStudio)
**	Versión 1.6.1	(07/05/2005):	-Corregido el bug que multiplicaba la variable _pagi_pg en el URL cuando se propaga automáticamente 
**									 el array $_GET.
**	Versión 1.6.2	(21/10/2005):	-Se incluyeron los enlaces a la página primera y a la última.
**									-Se incluyó la opción de personalizar los enlaces a la página primera y a la última.
**	Versión 1.6.3	(22/02/2006):	-Corregida la expresión regular para que reconozca los saltos de línea y tabulaciones como espacio en blanco.
**									 Gracias a El_Condor en forosdelweb por reportar el comportamiento indeseado.
**
**-----------------------------------------------------------------------------------------------------------*/


/**
* Variables que se pueden definir antes de incluir el script vía include():
* ------------------------------------------------------------------------
* $_pagi_sql					 OBLIGATORIA.	Cadena. Debe contener una sentencia sql válida (y sin la cláusula "limit").

* $_pagi_cuantos				OPCIONAL.		Entero. Cantidad de registros que contendrá como máximo cada página.
								Por defecto está en 20.
											
* $_pagi_nav_num_enlaces		OPCIONAL		Entero. Cantidad de enlaces a los números de página que se mostrarán como 
								máximo en la barra de navegación.
								Por defecto se muestran todos.
											
* $_pagi_mostrar_errores		OPCIONAL		Booleano. Define si se muestran o no los errores de MySQL que se puedan producir.
								Por defecto está en "true";
											
* $_pagi_propagar				OPCIONAL		Array de cadenas. Contiene los nombres de las variables que se quiere propagar
								por el url. Por defecto se propagarán todas las que ya vengan por el url (GET).
* $_pagi_conteo_alternativo	OPCIONAL		Booleano. Define si se utiliza mysql_num_rows() (true) o COUNT(*) (false).
								Por defecto está en false.
* $_pagi_separador				OPCIONAL		Cadena. Cadena que separa los enlaces numéricos en la barra de navegación entre páginas.
								Por defecto se utiliza la cadena " | ".
* $_pagi_nav_estilo			OPCIONAL		Cadena. Contiene el nombre del estilo CSS para los enlaces de paginación.
								Por defecto no se especifica estilo.
* $_pagi_nav_anterior			OPCIONAL		Cadena. Contiene lo que debe ir en el enlace a la página anterior. Puede ser un tag <img>.
								Por defecto se utiliza la cadena "« Anterior".
* $_pagi_nav_siguiente			OPCIONAL		Cadena. Contiene lo que debe ir en el enlace a la página siguiente. Puede ser un tag <img>.
								Por defecto se utiliza la cadena "Siguiente »"
* $_pagi_nav_primera			OPCIONAL		Cadena. Contiene lo que debe ir en el enlace a la primera página. Puede ser un tag <img>.
								Por defecto se utiliza la cadena "«« Primera".
* $_pagi_nav_ultima			OPCIONAL		Cadena. Contiene lo que debe ir en el enlace a la página siguiente. Puede ser un tag <img>.
								Por defecto se utiliza la cadena "Última »»"
--------------------------------------------------------------------------
*/


/*
* Verificación de los parámetros obligatorios y opcionales.
*------------------------------------------------------------------------
*/
if(empty($_pagi_sql)){
	// Si no se definió $_pagi_sql... grave error!
	// Este error se muestra sí o sí (ya que no es un error de mysql)
	die("<b>Error Paginator : </b>No se ha definido la variable \$_pagi_sql");
}

if(empty($_pagi_cuantos)){
	// Si no se ha especificado la cantidad de registros por página
	// $_pagi_cuantos será por defecto 20
	$_pagi_cuantos = 20;
}

if(!isset($_pagi_mostrar_errores)){
	// Si no se ha elegido si se mostrará o no errores
	// $_pagi_errores será por defecto true. (se muestran los errores)
	$_pagi_mostrar_errores = true;
}

if(!isset($_pagi_conteo_alternativo)){
	// Si no se ha elegido el tipo de conteo
	// Se realiza el conteo dese mySQL con COUNT(*)
	$_pagi_conteo_alternativo = false;
}

if(!isset($_pagi_separador)){
	// Si no se ha elegido un separador
	// Se toma el separador por defecto.
	$_pagi_separador = " | ";
}

  if(isset($_pagi_nav_estilo)){
	// Si se ha definido un estilo para los enlaces, se genera el atributo "class" para el enlace
	$_pagi_nav_estilo_mod = "class=\"$_pagi_nav_estilo\"";
}else{
	// Si no, se utiliza una cadena vacía.
	$_pagi_nav_estilo_mod = "";
}

if(!isset($_pagi_nav_anterior)){
	// Si no se ha elegido una cadena para el enlace "siguiente"
	// Se toma la cadena por defecto.
	$_pagi_nav_anterior = "« Anterior";
} 

if(!isset($_pagi_nav_siguiente)){
	// Si no se ha elegido una cadena para el enlace "siguiente"
	// Se toma la cadena por defecto.
	$_pagi_nav_siguiente = "Siguiente »";
} 

if(!isset($_pagi_nav_primera)){
	// Si no se ha elegido una cadena para el enlace "primera"
	// Se toma la cadena por defecto.
	$_pagi_nav_primera = "«« Primera";
} 

if(!isset($_pagi_nav_ultima)){
	// Si no se ha elegido una cadena para el enlace "siguiente"
	// Se toma la cadena por defecto.
	$_pagi_nav_ultima = "Última »»";
} 

//------------------------------------------------------------------------


/*
* Establecimiento de la página actual.
*------------------------------------------------------------------------
*/
if (empty($_GET['_pagi_pg'])){
	// Si no se ha hecho click a ninguna página específica
	// O sea si es la primera vez que se ejecuta el script
		// $_pagi_actual es la pagina actual-->será por defecto la primera.
	$_pagi_actual = 1;
}else{
	// Si se "pidió" una página específica:
	// La página actual será la que se pidió.
		$_pagi_actual = $_GET['_pagi_pg'];
}
//------------------------------------------------------------------------


/*
* Establecimiento del número de páginas y del total de registros.
*------------------------------------------------------------------------
*/
// Contamos el total de registros en la BD (para saber c*ántas páginas serán)
// La forma de hacer ese conteo dependerá de la variable $_pagi_conteo_alternativo
if($_pagi_conteo_alternativo == false){
	$_pagi_sqlConta = eregi_replace("select[[:space:]](.*)[[:space:]]from", "SELECT COUNT(*) FROM", $_pagi_sql);
	$_pagi_result2 = mysql_query($_pagi_sqlConta);
	// Si ocurrió error y mostrar errores está activado
	if($_pagi_result2 == false && $_pagi_mostrar_errores == true){
		die (" Erro na consulta de registros: $_pagi_sqlConta. Mysql dijo: <b>".mysql_error()."</b>");
	}
	$_pagi_totalReg = mysql_result($_pagi_result2,0,0);//total de registros
}else{
	$_pagi_result3 = mysql_query($_pagi_sql);
	// Si ocurrió error y mostrar errores está activado
	if($_pagi_result3 == false && $_pagi_mostrar_errores == true){
		die (" Error en la consulta de conteo alternativo de registros: $_pagi_sql. Mysql dijo: <b>".mysql_error()."</b>");
	}
	$_pagi_totalReg = mysql_num_rows($_pagi_result3);
}
// Calculamos el número de páginas (saldrá un decimal)
// con ceil() redondeamos y $_pagi_totalPags será el número total (entero) de páginas que tendremos
$_pagi_totalPags = ceil($_pagi_totalReg / $_pagi_cuantos);

//------------------------------------------------------------------------


/*
* Propagación de variables por el URL.
*------------------------------------------------------------------------
*/
// La idea es pasar también en los enlaces las variables hayan llegado por url.
$_pagi_enlace = $_SERVER['PHP_SELF'];
$_pagi_query_string = "?";

if(!isset($_pagi_propagar)){
	//Si no se definió qué variables propagar, se propagará todo el $_GET (por compatibilidad con versiones anteriores)
	//Perdón... no todo el $_GET. Todo menos la variable _pagi_pg
	if (isset($_GET['_pagi_pg'])) unset($_GET['_pagi_pg']); // Eliminamos esa variable del $_GET
	$_pagi_propagar = array_keys($_GET);
}elseif(!is_array($_pagi_propagar)){
	// si $_pagi_propagar no es un array... grave error!
	die("<b>Error Paginator : </b>La variable \$_pagi_propagar debe ser un array");
}
// Este foreach está tomado de la Clase Paginado de webstudio
// (http://www.forosdelweb.com/showthread.php?t=65528)
foreach($_pagi_propagar as $var){
	if(isset($GLOBALS[$var])){
		// Si la variable es global al script
		$_pagi_query_string.= $var."=".$GLOBALS[$var]."&";
	}elseif(isset($_REQUEST[$var])){
		// Si no es global (o register globals está en OFF)
		$_pagi_query_string.= $var."=".$_REQUEST[$var]."&";
	}
}

// Añadimos el query string a la url.
$_pagi_enlace .= $_pagi_query_string;

//------------------------------------------------------------------------


/*
* Generación de los enlaces de paginación.
*------------------------------------------------------------------------
*/
// La variable $_pagi_navegacion contendrá los enlaces a las páginas.
$_pagi_navegacion_temporal = array();
if ($_pagi_actual != 1){
	// Si no estamos en la página 1. Ponemos el enlace "primera"
	$_pagi_url = 1; //será el número de página al que enlazamos
	$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." onclick=\"pesquisa($_pagi_url)\">$_pagi_nav_primera</a>";

	// Si no estamos en la página 1. Ponemos el enlace "anterior"
	$_pagi_url = $_pagi_actual - 1; //será el número de página al que enlazamos
	$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod."  onclick=\"pesquisa($_pagi_url)\">$_pagi_nav_anterior</a>";
}

// La variable $_pagi_nav_num_enlaces sirve para definir c*ántos enlaces con 
// números de página se mostrarán como máximo.
// Ojo: siempre se mostrará un número impar de enlaces. Más info en la documentación.

if(!isset($_pagi_nav_num_enlaces)){
	// Si no se definió la variable $_pagi_nav_num_enlaces
	// Se asume que se mostrarán todos los números de página en los enlaces.
	$_pagi_nav_desde = 1;//Desde la primera
	$_pagi_nav_hasta = $_pagi_totalPags;//hasta la última
}else{
	// Si se definió la variable $_pagi_nav_num_enlaces
	// Calculamos el intervalo para restar y sumar a partir de la página actual
	$_pagi_nav_intervalo = ceil($_pagi_nav_num_enlaces/2) - 1;
	
	// Calculamos desde qué número de página se mostrará
	$_pagi_nav_desde = $_pagi_actual - $_pagi_nav_intervalo;
	// Calculamos hasta qué número de página se mostrará
	$_pagi_nav_hasta = $_pagi_actual + $_pagi_nav_intervalo;
	
	// Ajustamos los valores anteriores en caso sean resultados no válidos
	
	// Si $_pagi_nav_desde es un número negativo
	if($_pagi_nav_desde < 1){
		// Le sumamos la cantidad sobrante al final para mantener el número de enlaces que se quiere mostrar. 
		$_pagi_nav_hasta -= ($_pagi_nav_desde - 1);
		// Establecemos $_pagi_nav_desde como 1.
		$_pagi_nav_desde = 1;
	}
	// Si $_pagi_nav_hasta es un número mayor que el total de páginas
	if($_pagi_nav_hasta > $_pagi_totalPags){
		// Le restamos la cantidad excedida al comienzo para mantener el número de enlaces que se quiere mostrar.
		$_pagi_nav_desde -= ($_pagi_nav_hasta - $_pagi_totalPags);
		// Establecemos $_pagi_nav_hasta como el total de páginas.
		$_pagi_nav_hasta = $_pagi_totalPags;
		// Hacemos el último ajuste verificando que al cambiar $_pagi_nav_desde no haya quedado con un valor no válido.
		if($_pagi_nav_desde < 1){
			$_pagi_nav_desde = 1;
		}
	}
}

for ($_pagi_i = $_pagi_nav_desde; $_pagi_i<=$_pagi_nav_hasta; $_pagi_i++){//Desde página 1 hasta última página ($_pagi_totalPags)
	if ($_pagi_i == $_pagi_actual) {
		// Si el número de página es la actual ($_pagi_actual). Se escribe el número, pero sin enlace y en negrita.
		$_pagi_navegacion_temporal[] = "<span><strong>$_pagi_i</strong></span>";
	}else{
		// Si es cualquier otro. Se escibe el enlace a dicho número de página.
		$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." onclick=\"pesquisa($_pagi_i)\">".$_pagi_i."</a>";
	}
}

if ($_pagi_actual < $_pagi_totalPags){
	// Si no estamos en la última página. Ponemos el enlace "Siguiente"
	$_pagi_url = $_pagi_actual + 1; //será el número de página al que enlazamos
	$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." onclick=\"pesquisa($_pagi_url)\">$_pagi_nav_siguiente</a>";

	// Si no estamos en la última página. Ponemos el enlace "Última"
	$_pagi_url = $_pagi_totalPags; //será el número de página al que enlazamos
	$_pagi_navegacion_temporal[] = "<a ".$_pagi_nav_estilo_mod." onclick=\"pesquisa($_pagi_url)\">$_pagi_nav_ultima</a>";
}
$_pagi_navegacion = implode($_pagi_separador, $_pagi_navegacion_temporal);

//------------------------------------------------------------------------


/*
* Obtención de los registros que se mostrarán en la página actual.
*------------------------------------------------------------------------
*/
// Calculamos desde qué registro se mostrará en esta página
// Recordemos que el conteo empieza desde CERO.
$_pagi_inicial = ($_pagi_actual-1) * $_pagi_cuantos;

// Consulta SQL. Devuelve $cantidad registros empezando desde $_pagi_inicial
$_pagi_sqlLim = $_pagi_sql." LIMIT $_pagi_inicial,$_pagi_cuantos";
$_pagi_result = mysql_query($_pagi_sqlLim);
// Si ocurrió error y mostrar errores está activado
if($_pagi_result == false && $_pagi_mostrar_errores == true){
	die ("Error en la consulta limitada: $_pagi_sqlLim. Mysql dijo: <b>".mysql_error()."</b>");
}

//------------------------------------------------------------------------


/*
* Generación de la información sobre los registros mostrados.
*------------------------------------------------------------------------
*/
// Número del primer registro de la página actual
$_pagi_desde = $_pagi_inicial + 1;

// Número del último registro de la página actual
$_pagi_hasta = $_pagi_inicial + $_pagi_cuantos;
if($_pagi_hasta > $_pagi_totalReg){
	// Si estamos en la última página
	// El ultimo registro de la página actual será igual al número de registros.
	$_pagi_hasta = $_pagi_totalReg;
}

$_pagi_info = "desde el $_pagi_desde hasta el $_pagi_hasta de un total de $_pagi_totalReg";

//------------------------------------------------------------------------


/**
* Variables que quedan disponibles después de incluir el script vía include():
* ------------------------------------------------------------------------

* $_pagi_result		Identificador del resultado de la consulta a la BD para los registros de la página actual. 
				Listo para ser "pasado" por una función como mysql_fetch_row(), mysql_fetch_array(), 
				mysql_fetch_assoc(), etc.
							
* $_pagi_navegacion		Cadena que contiene la barra de navegación con los enlaces a las diferentes páginas.
				Ejemplo: "<<primera | <anterior | 1 | 2 | 3 | 4 | siguiente> | última>>".
							
* $_pagi_info			Cadena que contiene información sobre los registros de la página actual.
				Ejemplo: "desde el 16 hasta el 30 de un total de 123";				

*/
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao se o link de pesquisa e o mesmo basta o seguinte

 

na funcao:

 

<script>

function get(pag)

{

p=document.getElementById(pag).value;

url="recebe.php?_pagi_pg="+p;

ajax(url);

}

</script>

no input... tem de colocar um id="valor" .... por exemplo

o botao do form ficara <input type="button" value="mandar valor" onclick="java script:get('valor')">

 

 

explicacao:

 

o botao chama a funcao get do js mandando o id da input (valor), depois na funcao get a variavel p recebe o valor do texto input adiciona esse valor a url e depois chama o ajax

 

 

senao for isso que pretende explique melhor, nao necessita postar os codigos das paginas todas, apenas o codigo da pagina onde esta o problema

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, tentei tb desta maneira e não consegui.

 

vou postar da forma que da certo como funciona em categorias.

 

imagine no lado esquerdo um menu com links

EX:

Computadores

Notebooks

Teclados

ect....

No meu php ele gera assim com o loop

 

echo "<li><a onclick=\"pesquisa(1)\" href=\"categoria=".$lista_cat["id"]."\">".$lista_cat["categoria"]."</a></li>";

 

$lista_cat['id'] pega o id da categoria e o outro pega o nome...

 

O js dele:

 

<script>

function pesquisa(pag)

{

url="categorias.php?_pagi_pg="+pag;

ajax(url);

}

</script>

 

Clicando em algum link ele manda pro categoria.php

 

lá no categoria recebe assim;

 

$link = $_GET['categoria']; // aqui pega a categoria lá do href dos links

 

session_start();

if ($_SESSION['id'] == ""){

$_SESSION['id'] = $link;

}else{

$_SESSION['id'] = $_SESSION['id'];

}

 

e depois disso faz a mesma coisa que o recebe.php que está acima no post. só mudando alguns paramentros no select....

 

Pros links funcionam normal o paginador.

 

dae pensei, agora vou colocar o mesmo para uma busca...

até tentei dar uma mexida no seu script, consegui passar os dois parametros (valor do input e valor 1 de primeira página).

dei um alert no script e mostrou na tela certinho.

 

<script>

function get(pag,paginador)

{

p=document.getElementById(pag).value;

//url="busca_rapida.php?_pagi_pg="+p;

url="busca_rapida.php?valor_input="+p+"&_pagi_pg="+paginador;

alert(url);

 

ajax(url);

}

</script>

 

o meu form ta assim:

 

<form id="form_funcoes">

<input type="text" value="digite o termo aqui" name="fast_find" id="fast_find" />

<input type="button" name="ok" value="" onclick="java script:get('fast_find',1);" />

</form>

 

E continuo sem conseguir resolver.....

se eu colocar os scripts pra download, seria pedir muito?

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem vou fazer um exemplo aqui rapido depois te passo o link para download

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem vamos ver se era isto! se nao for diga

 

http://www.4shared.com/file/91505782/ac490...ers_help09.html

 

 

Importante:

 

##########3teste2.php

 

onde fica categoria5 voce so tem de colocar em php por exemplo <?=r["categoria"]?>

<td><a href="java script:chekar('url2','categoria5')">Link5</a></td>

depois na pagina busca nao tem nada demais, so diferencia as op e dentro desses if você escolhe o que vai executar se a opcao for das categoria e o que vai executar se a opcao for do input os valores tambem sao passados

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, mas o paginador é que é o problema maior...

 

to te passando de novo pra ver o erro que dá quando clica na pagina 2 ou próximo..

 

 

arquivos

 

 

sql se for necessario

 

CREATE TABLE `produtos` (

`id` int(11) NOT NULL auto_increment,

`categoria` varchar(100) NOT NULL,

`destaque` int(3) NOT NULL,

`nome` varchar(100) NOT NULL,

`marca` varchar(50) default NULL,

`caracteristica` varchar(80) default NULL,

`mais_info` varchar(500) default NULL,

`valor` varchar(50) default NULL,

`imagem` varchar(100) default NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;

 

--

-- Extraindo dados da tabela `produtos`

--

 

INSERT INTO `produtos` (`id`, `categoria`, `destaque`, `nome`, `marca`, `caracteristica`, `mais_info`, `valor`, `imagem`) VALUES

(1, '4', 2, 'Camera digital', 'Nikon', 'Resolução 12mega pixel, bateria recarregável', NULL, '2499.00', 'thumb_69221801.jpg'),

(2, '9', 2, 'Mouse óptico', 'Microsoft', '2 botões, sem fio', NULL, '87.90', 'thumb_50020446.jpg'),

(3, '2', 2, 'Notebook', 'HP', 'Core 2 duo,memória 2gb,hd 250gb,tela 14 widescreen', NULL, '1490.00', 'thumb_95797729.jpg'),

(4, '1', 2, 'Computador', 'Positivo', 'Processador Celeron M530, Memória 1Gb, HD 160Gb, Tela LCD 15', 'Monitor Sansung LCD Widescreen 15", Placa de video Geforce 128Mb, Windows Vista Home, 2 anos de garantia', '799.00', 'thumb_64055480.jpg'),

(5, '4', 2, 'camera 2', 'asdasd', 'asdasd', 'jjjjjj', '666', 'gfdfgfdg'),

(6, '4', 2, 'kkk', 'ghj', 'fgj', NULL, 'ghj', NULL),

(7, '4', 1, 'sdfdsf', 'dsfsdf', 'sdfsdf', NULL, 'sdfsdfsdf', NULL),

(8, '4', 1, 'ghjghj', 'ghjghj', 'ghjgh', NULL, 'hjghjhgj', NULL),

(9, '3', 2, 'Monitor', '', '', '', '', '');

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois estive vendo e o sistema ate mostra a primeira pagina mas as outras se clicar bnao

 

Antes de criar a parte para o do form isso funcionava? se sim entao o problema esta em fazer requires na pagina de busca e isso resolverse-a da seguinte maneira fica so a pagina de busca colocara as duas consultas na mesma pagina(busca.php) so que a pesquisa so e executada de acordo com o if, ou seja

 

pagina busca contem o codigo das paginas processa_input e processa_categoria sem includes somente ponha os codigos dentro do if correspondente

 

 

if(categoria){consulta para a categoria} elseif(input){consulta para o input}

 

nao achei uma outra solucao por agora

Compartilhar este post


Link para o post
Compartilhar em outros sites

esqueca o que falei no post anterior o problema esta no paginador o qual a clicar por exemplo na segunda lista de resultados vai buscar umaa pagina errada e como consequencia da erro. Vou tentar desenvolver aqui um exemplo, pois ainda sou novato em php e nao tenho tido mto tempo poara estudar mas com logica e os comandos certos eu faco isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

certo amigo, fico no aguardo.

 

obs: só respondendo o post anterior, funcionava sim o paginador com requires para links das categorias....

 

o problema pode ser mesmo no paginador2.inc.php.

 

talvez tenha que passar mais algum parâmetro nele, sei lá....

 

quando clica em algum link que você fez, ele dá um alert na tela com a informação correta do link. e depois quando clica no paginador mostra só o numero 2.

talvez seja aí o problema e ter que passar os mesmo parametros como do link categorias...

 

to só tentando fazer a lógica....talvez eu esteja errado tb né....

 

mas fico no aguardo....

 

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara eu tentei e sem sucesso, ate consigo fazer apresentar os primeiros registos mas se eu vou para a proxima pagina ja nao da, nao sei o que sera, do paginador nao e pk eu testei com outro sistema e isolado da mas se eu chamar com ajax ja nao da so apresenta os primeiros registos mas os outros nao, a paginacao nao funciona, agora isso nao sei pk.

 

 

Sugiro o seguinte abre um novo topico no ajax e coloque essa questao do pk de ao chamar uma paginacao atraves do ajax nao funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenho aqui um exemplo que me passaram, utilizando o paginator, mas teria de se modificar para ficar de acordo com o que quer mas vou passar na mesma

 

 

http://www.4shared.com/file/91759310/5b72edb0/paginacao.html

 

 

ou seja pelo que estive a ver ja descobri o pk daquilo nao funcionar, tem de se mandar um outro parametro atraves do ajax este parametro vai servir para dizer ao ajax a consulta que vai fazer na pagina consulta.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

no ie6 funcionou tb...

ha: não precisa então startar a sessão antes?

@session_start();

 

o que seria o "<input type="text" id="batota" value="">" ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

hehehee

 

o que seria o "<input type="text" id="batota" value="">" ?

isso fez parte de dezenas de debugs e solucoes que tentei, pode apagar isso na serve para nada

 

 

o problema esta resolvido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aparentemente sim, funcionando tb em IE.

agora em casa vou aplicar pro meu site e testar...

 

muitíssimo obrigado pela força....

vou até fechar aquele tópico que abri depois desse.....

 

Abração

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.