FORMULARIOS PHP , CONSULTA MYSQL , DUDA

GUSTIGUS
21 de Enero del 2004
Gente experta, y capos del sitio. Recurro a ustedes por el siguiente problema:
1) Necesito hacer un search para una pagina de un portal de una empresa de placas madre.
Me dijeron que en el search incluya una tabla con FAQs y otra con los PRODUCTOS de la empresa.
2) Hasta ahora tengo el código hecho para tomar los datos del formulario via método get (INDEX.HTML) y consultar la base "PREGUNTAS" Y su tabla FAQ(CONSULTA.PHP), que les copio abajo

***************************index.html******************************
<form action="consulta.php" method="get">
search: <input type="text" name="txtbusca">
<input type="submit" value="Go!">
</form>
**************************************************************************

******************* consulta.php***********************************


<?PHP
// REALIZO LA CONEXION AL SERVER MYSQL

$myconn = mysql_connect("localhost","GUSTIHERRERA","UNICORNIO");
if (! $myconn) {
echo "No se pudo conectar con el Servidor MySql";
exit();
}
else{
echo "La conexión tuvo éxito"."<BR>"."<BR>";
}

// CONECTO AHORA A LA BASE DE DATOS
If (! @mysql_select_db("PREGUNTAS",$myconn)){
echo "No pude conectar a la base de datos";
exit();
}


// Traigo el valor del cuadro de texto
// $consulta = $_GET["txtbusca"];
$consulta = $HTTP_GET_VARS["txtbusca"];
$busca = $consulta; //me guardo el resultado para imprimirlo al final

echo "<BR>";
// Con esta función armo un vector con las palabras ingresadas por el usuario
$consulta = split(" ",$consulta);
trim($consulta);
//

if ($consulta== '' ) { // verifico que me pase un paràmetro
echo "Ingrese un TEXTO VALIDO";
exit();
}else { //Si hay valores...sigo
$sql = "SELECT RESPUESTA FROM faq WHERE ";
for($a = 0; $a < count($consulta); $a++){
if ( $consulta[$a] != " "){
If ($a != 0){
$sql.="AND ";
}
$sql.="RESPUESTA LIKE '%".$consulta[$a]."%'";
}
}
}

//echo $sql;


/* CREO LA CONSULTA SQL

// $sql = "SELECT PREGUNTA, RESPUESTA FROM faq";

*/
// EJECUTO LA CONSULTA

//(ESTE FUNCIONA
//$result = mysql_query("SELECT * from faq where respuesta like '%jumper%'");
$result = mysql_query($sql);
if (! $result){
echo "La consulta a la base no tuvo exito";
exit();
}

// CON LA FUNCION mysql_fetch_array, IMPRIMO LOS RESULTADOS
?>

<table width="500" border="0" cellspacing="0" cellpadding="0" style="border: 1px solid; border-color: #6D6D6D;">

<?

while ($row = mysql_fetch_array($result)){
echo "<BR>";
echo "La respuestas para : " .$busca;
echo "<BR>";
echo $row["PREGUNTA"]."<BR>";
echo $row["RESPUESTA"]."<BR>";
echo "<BR>";
}


?>
</table>


3) LA QUERY ME FUNCIONA BIEN.

AHORA LAS PREGUNTAS:

A) NO SE COMO VOLCAR ESOS DATOS AL FORMULARIO HTML
B) NO SE COMO PAGINAR ESOS DATOS DE MODO TAL QUE PUEDA PONER LOS RESULTADOS ENCONTRADOS DE A DIEZ POR PAGINA
C) ESTOY PROBANDO TODO EN MI LOCALHOST, PERO NI IDEA DE COMO SUBIR TODO ESTO AL SERVIDOR, ES POR FTP? , PUEDO SUBIR LAS TABLAS DE MYSQL POR FTP AL SERVIDOR REAL CON SOPORTE DE APACHE Y MYSQL?

BUENO GENTE SI ME PUEDEN DAR UNA MANO AGRADECIDO. UN ABRAZO.

pier
21 de Enero del 2004
A) Si la query te funciona bien y todo es correcto, para volcar los datos al formulario basta con hacer la consulta seleccionando el registro adecuado y volcar la información. No se si no comprendo lo que dices porque eso creo que es facil.
B) Para paginar los resultados existe una sentencia en MySQL denominada LIMIT. Informate sobre ella porque es muy facil de utilizar.
C) Cuando tengas la página terminada en tu localhost, la subes al servidor por ftp. Para la base de datos, te recomiendo que utilizando phpmyadmin, la exportes de tu localhost, y la importes también por phpmyadmin en tu servidor. Además debes cerciorarte del nombre de usuario y la contraseña al hacer la conexión con la base de datos en el servidor, ya que esos parámetros suelen ser distintos a los que has introducido cuando lo haces en tu localhost.