Reglamento general de los foros   •   FAQ   •   Buscar en el foro •  Registrarse | Iniciar sesión 



Foros Linux » Desarrollo » Programación


Nuevo tema Responder al tema
 [ 6 mensajes ] 
Patrocinadores

Autor
Buscar:
Mensaje

Desconectado
Forista Menor
Forista Menor
Avatar de Usuario

Registrado: Dom Ene 07, 2007 12:00 am
Mensajes: 50
Ubicación: Cuautla, Morelos

Nota Publicado: Dom Abr 10, 2011 1:00 pm 
Arriba  
Hola, que tal, tengo un pequeño problema el cual no he podido resolver.

Tengo un cuadro de texto, y al escribir un nombre o la inicial del nombre , ejemplo: YARA, o Y, esta hace una consulta a la base de datos y me deberia de motrar, todos aquellos nombre que lleven la Y o YARA, en el MYSQL FRONT, si lo hace con la sentencia:

SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '%YARA%'

El problema persiste en la programacion, pues no me muestra nada, utilizo lo siguiente:


<?php
include("conec.php"); //LIBRERIA DE CONECCION AL SERVER
$link=Conectarse(); // LLAMADA A FUNCION DE CONECCION A SERVIDOR
$Sql="SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '$nomb%';";
$result=mysql_query($Sql,$link);
$row = mysql_fetch_assoc($result); //IMPRIMIR EL VALOR DE LOS CAMPOS DE LA TABLA
?>

nomb es el nombre del cuadro de texto,
nom_alum es el campo donde estan los nombres de alumnos

Con estas lineas de codigo, la consulta no funciona, no muestra nada.... PORQUE !!!
Adjunto pantallas.

De antegracias comunidad de programacion PHP... y ojala puedan ayudarme.
Gracias...
Imagen

Imagen

Imagen


Adjuntos:
Comentario: consulta desde el navegador
yara.zip [479.98 KiB]
8 veces

_________________
Cualquiera puede hacer un S.O., la pregunta es ¿Por donde Empiezooo?.


Última edición por Deckon el Dom Abr 10, 2011 1:00 pm, editado 1 vez en total
Titulo editado por transgredir las normas de escritura
 Perfil  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Abr 18, 2007 11:00 pm
Mensajes: 1209
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Dom Abr 10, 2011 1:41 pm 
Arriba  
hola compañero, talvez la otra porción del código ayudaría a saber cómo se está manipulando el resultado, recuerda que cuando asignas el resultado de la fila en:

Código:
$row = mysql_fetch_assoc($result)


lo haces para una sola, talvez si cambiaras en un bucle

Código:
while ( $row = mysql_fetch_assoc($result) )
{
echo ("<p>" . $row["campo1"]." ".$row ["campo2"] ."</p>"); /*ajustar a necesidades*/
}


aunque la verdad no se si en tu código restante ya lo manejas.

Orientanos un poco más si no es el punto.

Saludos =)

_________________
Grüße...
Maiku

Full linux alchemist!!!

 Perfil WWW  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Nov 28, 2007 12:00 am
Mensajes: 1361
Ubicación: En la X del explorer (pulse para llamar)

Nota Publicado: Lun Abr 11, 2011 2:08 am 
Arriba  
Código:
$Sql="SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '$nomb%';";

Para mí que el problema puede estar ahí. Creo que el $nomb te lo puede estar interpretando como un literal y no como una variable. Prueba poniendo algo concreto para ver si funciona, y luego ya se verá, en caso de que sea por esta razón, cómo solucionarlo.
De ser así, puedes intentar con el siguiente código:
Código:
$Sql="SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '"  .  $nomb  .  "%';";

Simplemente es concatenar el primer literal (hasta las comillas), concatenarlo con el valor de la variable, y luego con el resto.

_________________
Descargue el gestor de mp3 "Music Manager" -> (mmlf)
Última versión del gestor "Music Manager" -> (jmmm)

 Perfil  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Abr 18, 2007 11:00 pm
Mensajes: 1209
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Lun Abr 11, 2011 6:09 am 
Arriba  
akodo escribió:
Código:
$Sql="SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '"  .  $nomb  .  "%';";

Simplemente es concatenar el primer literal (hasta las comillas), concatenarlo con el valor de la variable, y luego con el resto.


hum, muy cierto puede que busque la variable $nomb%' ( si es que se puede hacer eso O_o )

no se si esta forma funciona igual:

Código:
$Sql="SELECT * FROM CERTIFICADOS WHERE NOM_ALUM LIKE '{$nomb}%';";


por otra parte, si vemos la implementación del recorrido del arreglo encontraremos más detalles, no se si peco de ingenuo al decir que el código en primera instancia obtiene la primera fila (mysql_fetch_assoc), no se muestra en pantalla y al seguir recorriendo el arreglo (volviendo a invocar la asignación), ya no encuentra nada al estar vacía (1 fila, 2 asignaciones, prueba ingresando un registro más)

_________________
Grüße...
Maiku

Full linux alchemist!!!

 Perfil WWW  

Desconectado
Forista Menor
Forista Menor
Avatar de Usuario

Registrado: Dom Ene 07, 2007 12:00 am
Mensajes: 50
Ubicación: Cuautla, Morelos

Nota Publicado: Dom Sep 18, 2011 9:06 pm 
Arriba  
Ok, gracias chavos, lo voy a poner en funcion y ya les comentare lo que me ha estado sucediendo.
Gracias !!!

Editado -- Lun Sep 19, 2011 1:06 pm --

Esta es la solucion: Asi ya funciona a la perfecccion. GRACIAS !!!

<?php
include("conec.php");
$link=Conectarse();

//BUSQUEDA POR NOMBRE DEL ALUMNO
if($tp_busq = 1) {
$Sql="select * from alumnos where nom_alum like '%$nom%' ";

$datosconsulta=mysql_query($Sql);
$a=1;
while($resultado=mysql_fetch_assoc($datosconsulta)){
//aqui genero los links:
?>
<a href='expediente_all.php?nom=<?php echo $resultado['id']; ?>&espe=<?php echo $resultado['especialidad']; ?>&grado=<?php echo $resultado[ 'gdo']; ?>&grupo=<?php echo $resultado['gpo']; ?>'>
<? echo $a ?> <? echo "-"?><? echo " "?><?php echo $resultado['nom_alum']?><? echo " "?><? echo $resultado['ape_pat']?><? echo " "?><? echo $resultado['ape_mat']?><? echo " "?><? echo "="?><? echo " "?><? echo $resultado['especialidad']?><? echo " "?><? echo $resultado['gdo']?><? echo " "?><? echo $resultado['gpo' ]?>
</br>
</br>
</a>
<?php
$a++;
}
}

/// BUSQUEDA POR APELLIDO PATERNO
if($tp_busq = 2) {
$Sql="select * from alumnos where ape_pat like '%$nom%' ";

$datosconsulta=mysql_query($Sql);
$a=1;
while($resultado=mysql_fetch_assoc($datosconsulta)){
//aqui genero los links:
?>
<a href='expediente_all.php?nom=<?php echo $resultado['id']; ?>&espe=<?php echo $resultado['especialidad']; ?>&grado=<?php echo $resultado[ 'gdo']; ?>&grupo=<?php echo $resultado['gpo']; ?>'>
<? echo $a ?> <? echo "-"?><? echo " "?><?php echo $resultado['nom_alum']?><? echo " "?><? echo $resultado['ape_pat']?><? echo " "?><? echo $resultado['ape_mat']?><? echo " "?><? echo "="?><? echo " "?><? echo $resultado['especialidad']?><? echo " "?><? echo $resultado['gdo']?><? echo " "?><? echo $resultado['gpo' ]?>
</br>
</br>
</a>
<?php
$a++;
}
}
?>

_________________
Cualquiera puede hacer un S.O., la pregunta es ¿Por donde Empiezooo?.

 Perfil  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Abr 18, 2007 11:00 pm
Mensajes: 1209
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Dom Sep 18, 2011 11:23 pm 
Arriba  
Gracias compañero por agregar la solución. Le recuerdo que puede editar el título colocándo la leyenda (SOLUCIONADO), además puede colocar código entre etiquetas "code" para mejor lectura.

Nos leemos.

_________________
Grüße...
Maiku

Full linux alchemist!!!

 Perfil WWW  
Mostrar mensajes previos:  Ordenar por  
 [ 6 mensajes ] 
Nuevo tema Responder al tema

Saltar a:  


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro
No puede enviar adjuntos en este Foro

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group :: Style based on FI Subice by phpBBservice.nl :: Todos los horarios son UTC - 6 horas
Traducción al español por Huan Manwë
phpBB SEO