Febrero 21, 2018, 07:04:06 am

Autor Tema: [MYSQL] Error con consulta [Solucionado]  (Leído 1361 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado klaine

  • Yo vivo en CPH
  • ***
  • Mensajes: 433
    • Ver Perfil
[MYSQL] Error con consulta [Solucionado]
« en: Octubre 30, 2011, 07:11:12 pm »
Hola tengo un problemilla con la sintaxis de una funcion, me he qebrado la cabeza todo el dia tratando de ver que es, se supone que hay un registro que tiene el dato 'BC3' que debiera tomar la consulta "select * from b_disponibles" (la cual es una vista), el caso es que al mostrar me muestra 0

me conecto a la base de datos de tal forma:

He probado mostrar si la conexion funka, me muestra que si

Código: (php) You are not allowed to view links. Register or Login

mysql_connect("localhost", "root", "");

mysql_query("use providencia");


La funcion que me retorna el resultset es la siguiente:

Código: (php) You are not allowed to view links. Register or Login

function getAvailableBicicles(){

                $r = mysql_query("select * from b_disponibles");

                return $r;

}


Luego trato de hacer lo tipico con el resultset:

Código: (php) You are not allowed to view links. Register or Login

$row2=getAvailableBicicles();

            while($fila = mysql_fetch_array($row2)){

                $val = $fila['cod_bicicleta'];

            echo $val," <br>";

            }


El nombre de la columna esta bien escrito, he probado con fetch_assoc, fetch_row y nada, me muestra 0 siendo que en la tabla no hay ningun registro con ese valor  :P

Dejo la tabla bicicletas:

Código: (mysql) You are not allowed to view links. Register or Login

create table bicicleta(

cod_bicicleta varchar(255) not null primary key,
estado varchar(6) not null -- 'usando' o 'libre'

)engine=innodb;


La vista bicicletas libres:

Código: (mysql) You are not allowed to view links. Register or Login

create view b_disponibles as
select * from bicicleta where estado ='libre';


Finalmente los inserts:

Código: (mysql) You are not allowed to view links. Register or Login

insert into bicicleta(cod_bicicleta, estado)values('bc1', 'usando');
insert into bicicleta(cod_bicicleta, estado)values('bc2', 'usando');
insert into bicicleta(cod_bicicleta, estado)values('bc3', 'libre');


Antes de la creacion de las tablas esta la creacion de bases de datos y su uso xD (por si acaso)

Código: (mysql) You are not allowed to view links. Register or Login

drop database if exists providencia;
create database providencia;
use providencia;


De antemano, gracias por sus respuestas.

PD: En la shell de mysql funka  :-\
« Última modificación: Octubre 31, 2011, 08:10:54 pm por klaine »

Desconectado seth

  • El mas real
  • G#
  • **
  • Mensajes: 7899
  • Sexo: Masculino
    • Ver Perfil
Re:[MYSQL] Error con consulta
« Respuesta #1 en: Octubre 31, 2011, 06:57:55 am »
mysql_fetch_array devuelve un array con indices numéricos, tenes que usar mysql_fetch_assoc si queres usar un array asociativo
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login


Ves links a xd-blog.com.ar que no andan? buscalos en You are not allowed to view links. Register or Login

Desconectado ActerMarking

  • Yo vivo en CPH
  • ***
  • Mensajes: 565
  • Sexo: Masculino
  • La vondad de Nuestro SeÑor JeSuCrisTo.!!!
    • Ver Perfil
    • Gear Tuts->Actermaking, Karmac
Re:[MYSQL] Error con consulta
« Respuesta #2 en: Octubre 31, 2011, 04:34:54 pm »
@ klaine tú quieres aprender hacer tus codigos con funciones es lo que veo, pero tienes que tener más ordenamiento en ellos, porque veo todo fuera de contorno lo de [MYSQL_FETCH_ARRAY] y [MYSQL_FETCH_ASSOC] simplemente la diferencia es que fetch_array consume mas recursos que el otro por la razón que te genera los dos tipos de matrices(Asociativas, Index por clave)... y tambien si quieres usar MYSQL_FETCH_ARRAY($RESOURCE, MYSQL_ASSOC) y te genera simplemente el de Index por clave pero en letra NADA DE numerico. :! Así que dale para alla.

Lo que quieres es sumamente fácil lo puedes elaborar de diversas manera dependiendo de que tecnología que quieres emplear... lo puedes hacer con Jquery, JavaScript adjunto con PHP para el proceso y las comparaciones de datos y listo "nada dificil".

Saludos-> Dios lo bendigas a todos.
|<a href="You are not allowed to view links. Register or Login"> Engine Scripts</a> |  <a href="You are not allowed to view links. Register or Login">MI CANAL YOUTUBE</a> |
Hay camino que al hombre le parece derecho, pero al final es camino de <i>muerte</i>. PROVERBIOS 16:25

Desconectado klaine

  • Yo vivo en CPH
  • ***
  • Mensajes: 433
    • Ver Perfil
Re:[MYSQL] Error con consulta
« Respuesta #3 en: Octubre 31, 2011, 05:05:34 pm »
El caso es que no me funciona de ninguna forma, ni con fetch_assoc ni con fetch_array ni con fetch_row  :-\, me muestra 0 lo saque como lo saque, siendo que por los inserts que le hice a la tabla bicicletas deberia mostrarme bc3 T_T, lo hago en la shell y me lo muestra, pero en la pagina me muestra 0, he hecho otros codes con esa misma logica y me funcionan, pero ahora no se  :P

EDITO:

Esta funcion me resulta, llama a un procedimiento almacenado, saca el valor y lo muestra

Código: (php) You are not allowed to view links. Register or Login

function getMinutes($Codigo_peticion){

                mysql_query("call calculoMinutos($Codigo_peticion, @x)");

                $r = mysql_query("select @x");

                $s=mysql_fetch_row($r);

                return $s[0];

            }



Este es el PA:

Código: (mysql) You are not allowed to view links. Register or Login

delimiter '$$'

drop procedure if exists calculoMinutos $$

create procedure calculoMinutos(in codPeticion varchar(255), out arg int)
begin
declare fecha_peticion date;
declare fecha_entrega date;
declare month1 int;
declare month2 int;
declare cms int;
declare prearg int;

select fecha into fecha_peticion from peticion where cod_peticion=codPeticion;
select current_date into fecha_entrega;

select extract(month from(fecha_peticion)) into month1;
select extract(month from(fecha_entrega)) into month2;

select (((extract(hour from(current_time)) - (extract(hour from(p.hora)))) * 60)) + ((extract(minute from(current_time))) - (extract(minute from(p.hora)))) into prearg from peticion as p where cod_peticion=codPeticion;

IF NOT fecha_peticion = fecha_entrega THEN

select ((extract(day from(current_date)) - extract(day from(p.fecha))) * 24) * 60 into cms from peticion as p where cod_peticion=codPeticion;

select (cms + prearg) into arg;

ELSE

select prearg into arg;

END IF;

end

$$

delimiter ';'



De pasada me gustaria preguntar como se hace un PA en el query browser, para poder pasarle este code a los compañeros con los que tengo que hacer este trabajo, porque ellos no saben usar la shell de mysql, de hecho ni siquiera la tienen  :P
« Última modificación: Octubre 31, 2011, 05:22:23 pm por klaine »

Desconectado seth

  • El mas real
  • G#
  • **
  • Mensajes: 7899
  • Sexo: Masculino
    • Ver Perfil
Re:[MYSQL] Error con consulta [EDITÉ EL ULTIMO POST]
« Respuesta #4 en: Octubre 31, 2011, 07:31:21 pm »
proba esto
Código: You are not allowed to view links. Register or Login

$row2=getAvailableBicicles();

            while($fila = mysql_fetch_array($row2)){

                 print_r($fila);
                 echo $i++;
            }

Que sale?

Desconectado klaine

  • Yo vivo en CPH
  • ***
  • Mensajes: 433
    • Ver Perfil
Re:[MYSQL] Error con consulta [EDITÉ EL ULTIMO POST]
« Respuesta #5 en: Octubre 31, 2011, 08:04:00 pm »
Por esas cosas de la vida me dió por ejecutar de nuevo la pagina y ahora funciona xD!, de todas formas quedo bastante agradecido de vuestra ayuda, aprendi cosas que no esperaba aprender, en cuanto al pint_r me muestra esto:

Array ( [cod_bicicleta] => bc1 [estado] => libre ) Array ( [cod_bicicleta] => bc2 [estado] => libre ) Array ( [cod_bicicleta] => bc3 [estado] => libre )

Xd, habrá sido cosa del chrome o quizas del netbeans? o a lo mejor habrá sido un agujero negro que interseccionó con la luz reflejada del planeta venus que me impidió toda la tarde de ayer ver el correcto resultado del programa? si, yo creo que la última es la más lógica  :laugh:

Saludos! y, una vez mas gracias!
« Última modificación: Octubre 31, 2011, 08:11:56 pm por klaine »


question
CONSULTA A MySQL

Iniciado por medawar

5 Respuestas
1163 Vistas
Último mensaje Marzo 01, 2012, 05:17:51 am
por alextanase
question
consulta mysql en php

Iniciado por Manel92

2 Respuestas
1179 Vistas
Último mensaje Febrero 13, 2011, 06:08:15 pm
por shevchenko
xx
Conexion y consulta a db con MySQL

Iniciado por Kreusser

1 Respuestas
1789 Vistas
Último mensaje Diciembre 10, 2010, 12:02:42 am
por WaesWaes
question
Fallo en consulta Mysql

Iniciado por Eisenheim

3 Respuestas
1334 Vistas
Último mensaje Mayo 07, 2010, 06:04:51 pm
por Grox
resuelto
php consulta mysql - clausula WHERE

Iniciado por kicasta

3 Respuestas
1662 Vistas
Último mensaje Junio 22, 2013, 02:13:50 pm
por TXS
xx
Mostrar datos de una consulta PHP con MySQL

Iniciado por shevchenko

0 Respuestas
2619 Vistas
Último mensaje Mayo 25, 2009, 04:44:54 pm
por shevchenko
xx
consulta mysql con opción update o delete

Iniciado por Manel92

5 Respuestas
2018 Vistas
Último mensaje Abril 17, 2011, 10:25:23 am
por ActerMarking
question
[MYSQL] Otra forma de hacer esta consulta?

Iniciado por klaine

1 Respuestas
922 Vistas
Último mensaje Noviembre 12, 2011, 02:00:14 pm
por PeterPunk77
resuelto
[SOLUCIONADO]Problema con ID en MySQL

Iniciado por C00ki3

4 Respuestas
1627 Vistas
Último mensaje Diciembre 10, 2009, 11:13:08 pm
por C00ki3
xx
Ayuda Calendario Php+MySql(Solucionado)

Iniciado por DarkProgrammer

2 Respuestas
3333 Vistas
Último mensaje Noviembre 03, 2009, 07:33:34 am
por DarkProgrammer