Pasar variables por URL

decopas
16 de Junio del 2005
Hola..

Tengo una página html que contiene un formulario que solicita un nombre a buscar en una base de datos..al enviar la información abre una página php (dónde esta la conexión a la base de datos)..
Pues bien, quería que ésta pa´gina php se abriera en un popUp..y en principio se abre pero no pasa bien el contenido de la variabl, pues me muetra casi todos los registros de la base de datos..¿qué estoy haciendo mal?..muchas gracias por adelantado...

Os pongo el código:
+++++formualario.htm+++++
<html>

<head>
<title></title>
<SCRIPT LANGUAGE="JavaScript">

<!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=800,height=300,left = 262,top = 304');");
}
// End -->
</script>

<script language="javascript">
function centrar() {
iz=(screen.width-document.body.clientWidth) / 2;
de=(screen.height-document.body.clientHeight) / 2;
moveTo(iz,de);
}
</script>

</head>

<body onload="centrar()" bgcolor="#FCFAEF">
<form method="POST" action="javascript:popUp('buscador.php3?T1')">
<strong>Palabra clave:</strong> <input type="text" name="T1" size="20"><br><br>
<input type="submit" value="Buscar" name="buscar">
</form>
</body>
</html>

++++++++ buscador.php+++++++++++++++
<html>

<head>
<title></title>
</head>

<body bgcolor="#FCFAEF">

<?php

if (!isset($T1)){
echo "Debe especificar una cadena a buscar";
echo "
<p> n";
exit;
}
$link = mysql_connect("localhost", "admin237", "admin237");
mysql_select_db("aparicio-abogados_es_-_datos", $link);
$result = mysql_query("SELECT * FROM partidos WHERE nombre LIKE '%$T1%'", $link);
if ($row = mysql_fetch_array($result)){
echo "<table border='1' cellspacing='1' bordercolor='008080' bgcolor='FCFAEF' n";

//Mostramos los nombres de las tablas
echo "<tr><th bordercolor='008080' align='center' width='116' bgcolor='008080'><font color='FFFFFF'>Localidad</font></th><th bordercolor='008080' align='center' width='123' bgcolor='008080'><font color='FFFFFF'>Partido Judicial</font></th><th bordercolor='008080' align='center' width='464' bgcolor='008080'><font color='FFFFFF'>Dirección</font></th></tr>n"; do {
echo "<tr> n";
echo "<td>".$row["nombre"]."</td> n";
echo "<td>".$row["partido"]."</td> n";
echo "<td>".$row["direccion"]."</td> n";
echo "</tr> n";
} while ($row = mysql_fetch_array($result));
echo "</table> n";
} else {
echo "¡ No se ha encontrado ningún registro !";
}
?>
</body>
</html>

Loop
16 de Junio del 2005
Dahhh eso no es un buscador ! :S , de hecho el prob es que like regresa todos los campos ( ajaa ) en los que encuentra las coincidencias pero suele tener errores y regresa todos los registros después de que se encontró, recién hize un buscador, palabra por palabra y si coincidencia a like se muestra; lo mejor es que hagas algo parecido, o en definitiva puede que sea el mismo popup quien no pase esta info, ¿ intentaste ver si muestra la variable T1, echo $T1 ? si muestra la variable debe ser lo que te digo del buscador podrías intentar algo como ...

$search=explode(" ",$T1);
$Csearch=count($search);
for($a=0;$a<$Csearch;$a++){
$word=explode(" ",$nombre);
$count=count($word);
for($i=0;$i<$count;$i++){
if(eregi($search[$a],$word[$i])){echo "$nombre"; break 1;}
/* o no seguir buscando break; */
}

}

le faltaría mucho al código pero serviría , Saludos !