Foros del Web » Programando para Internet » PHP »

consultar varios campos en una misma tabla:

Estas en el tema de consultar varios campos en una misma tabla: en el foro de PHP en Foros del Web. Tengo este siguiente codigo: Código HTML: <form action= "82.php" method= "POST" style= "border-style: solid; border-width: 0; padding: 0" > <p align= "center" > <font face= ...
  #1 (permalink)  
Antiguo 07/03/2009, 13:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 8
Antigüedad: 15 años, 7 meses
Puntos: 0
consultar varios campos en una misma tabla:

Tengo este siguiente codigo:

Código HTML:
<form action="82.php" method="POST" style="border-style: solid; border-width: 0; padding: 0">
<p align="center"><font face="Verdana" size="2">Lapso:</font> 
<font face="Verdana" size="2"></font>
<input type="text" name="palabra" size="20" value="<? echo $fetch[10]; ?>">
<input type="text" name="palabra" size="20" value="<? echo $fetch2[6]; ?>">
<input type="submit" name="buscador" value="Buscar">
</p>
</form> 
Código PHP:
<?
if ($_POST['buscador'])

// Tomamos el valor ingresado
$buscar $_POST['palabra'];

// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo 
"No se ha ingresado una cedula a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","f1r2a3n4k");
$sql "SELECT * FROM preguntasquiz WHERE mencion LIKE '%$buscar%' OR materia LIKE '%$buscar%'";
mysql_select_db("exa1"$con);  

$result mysql_query($sql$con); 

// Tomamos el total de los resultados
$total mysql_num_rows($result);

// Imprimimos los resultados
if ($row mysql_fetch_array($result)){ 
echo 
"Resultados para: <b>V-$buscar</b>";
do { 
?>

<table border="1" width="362" id="table2" style="border-collapse: collapse">
                <tr>
                    <td width="144"><font face="Tahoma" style="font-size: 10pt">
                    Nombre del estudiante:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#008000"><?=$row['name_evaluacion'];?></font></td>
                </tr>
                <tr>
                    <td width="144"><font face="Tahoma" style="font-size: 10pt">
                    Año y sección:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#008000"><?=$row['semestre'];?></font></td>
                </tr>
                <tr>
                    <td width="144"><font face="Tahoma" style="font-size: 10pt">
                    Mencion:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#008000"><b><?=$row['mencion'];?></b></font></td>
                </tr>
                <tr>
                    <td width="144"><font face="Tahoma" style="font-size: 10pt">
                    Tipo de evaluación:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#008000"><?=$row['name_evaluacion'];?></font></td>
                </tr>
                <tr>
                    <td width="144"><font face="Tahoma" size="2">Porcentaje de 
                    eval:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#008000"><?=$row['porcentaje'];?></font></td>
                </tr>
                <tr>
                    <td width="144"><font face="Tahoma" style="font-size: 10pt">
                    <b>Materia</b>:</font></td>
                    <td align="left">
                    <font face="Tahoma" size="2" color="#CC0000"><b><?=$row['materia'];?></b></font></td>
                </tr>
            </table>
                    </tr>
                  
            
                <?
} while ($row mysql_fetch_array($result)); 
echo 
"<p>Resultados: $total</p>";
} else { 
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>"
}
}
}
?>
Como puedo realizar una consulta con dos campos que coincidan y solo me de la respuestas que solicite, porque consulto dos palabras y me da todo el registro completo que esta almacenado en la base de datos, yo solo quiero que me de el registro que solo estoy buscando, por ejemplo:

Si tengo una tabla llamada: quiz

Con los campos= nombre_quiz, semestre, mencion, materia, porcentaje, id, evaluacion
Y tengo en cada registro:
Id nombre_quiz Semestre Mencion* Materia* Porcentaje Evaluacion
1 Quiz 1 electronica telecom Fisica 1 20% 1
2 Quiz 2 mecanica potencia Fisica 1 20% 1
3 Quiz 3 mecanica potencia Fisica 2 20% 1

Como hago para que me busque en mencion=potencia y materia=fisica 1, me salga solamente el registro de esa fila

Última edición por fenternet; 07/03/2009 a las 13:37
  #2 (permalink)  
Antiguo 07/03/2009, 14:48
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Respuesta: consultar varios campos en una misma tabla:

Tema movido desde PHP>Configuración a PHP
  #3 (permalink)  
Antiguo 23/03/2009, 22:01
 
Fecha de Ingreso: agosto-2008
Mensajes: 45
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: consultar varios campos en una misma tabla:

Hola, simplemente tenés que poner dos nombres diferentes a los objetos del formulario

Código HTML:
Ver original
  1. <input type="text" name="palabra1" size="20" value="<? echo $fetch[10]; ?>">
  2. <input type="text" name="palabra2" size="20" value="<? echo $fetch2[6]; ?>">

y modificar el sql de búsqueda

Código PHP:
Ver original
  1. // Tomamos el valor ingresado
  2. $buscar1 = $_POST['palabra1'];
  3. $buscar1 = $_POST['palabra2'];
  4.  
  5. // Si está vacío, lo informamos, sino realizamos la búsqueda
  6. if(empty($buscar1) && empty($buscar2))
  7. {
  8. echo "No se ha ingresado una cedula a buscar";
  9. }else{
  10. // Conexión a la base de datos y seleccion de registros
  11. $con=mysql_connect("localhost","root","f1r2a3n4k");
  12. $sql = "SELECT * FROM preguntasquiz WHERE mencion LIKE '%$buscar1%' OR materia LIKE '%$buscar2%'";


Se entiende? Necesitás dos variables con dos valores, en una variable ponés "potencia" y en el otro "física 1".

Espero te sirva.

Saludos.
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 22:56.