Foros del Web » Programando para Internet » PHP »

Consulta rara

Estas en el tema de Consulta rara en el foro de PHP en Foros del Web. Saludos a todos, de entrada me disculpo si este tema no debería ir aquí. Tengo un método con un parámetro que hace una consulta a ...
  #1 (permalink)  
Antiguo 27/01/2015, 14:16
Avatar de sistecel  
Fecha de Ingreso: julio-2014
Ubicación: Colombia
Mensajes: 4
Antigüedad: 9 años, 9 meses
Puntos: 0
Consulta rara

Saludos a todos, de entrada me disculpo si este tema no debería ir aquí.

Tengo un método con un parámetro que hace una consulta a una tabla de un numero, tengo otro método hace una consulta a otra tabla y extrae el numero que paso como parámetro a este primer método.

El objetivo es que el primer método siempre me haga un select teniendo encuenta el parámetro y me arroje los resultados con base en esto para ir igualando lo que hay en las dos tablas

Lo raro es que me trae los resultados hasta cierto numero y en algún punto me saca una igualdad donde no la hay.



Lo raro es que los primeros 80 resultados salen igualados y los posteriores no.

Este es el código de salida.

<?php

//foreach ($repuestos as $r)
//$cuenta=1;
$placas = $pro->getPlacasPriority();

for($i=0; $i<sizeof($placas); $i++)
{
$cuenta = $i+1;
//$compara = "100817";
$compara = $placas[$i]["placa"];
$resultado = $pro->comparador($compara);

?>
<tr>

<td><?php echo $cuenta; ?></td>
<td><?php echo $compara; ?></td>
<td><?php echo $resultado[$i]['placa']; ?></td>
<!-- <td><?php echo $resultado[$i]['fecha_compra']; ?></td>
<td><?php echo $resultado[$i]['fecha_activacion']; ?></td>
<td><?php echo $resultado[$i]['valor_Compra']; ?></td>
<td><?php echo $resultado[$i]['valor_historico']; ?></td>-->

</tr>
<?php
}

?>

Agradezco cualquier colaboración.

Saludos
  #2 (permalink)  
Antiguo 27/01/2015, 14:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consulta rara

¿Crees que el problema es de código PHP o que probablemente la consulta de SQL arroje mal los datos?

Porque en el código que muestras no se nota nada "raro", así que dudo que el problema sea del código que muestras.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/01/2015, 14:32
Avatar de sistecel  
Fecha de Ingreso: julio-2014
Ubicación: Colombia
Mensajes: 4
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Consulta rara

Gracias pateketrueke por contestar, este es el primer metodo:
public function comparador($ingresa)
{
//self::set_names();
$sql="select * from placas_priority where placa = ? ";
$stmt=$this->db->prepare($sql);

if ($stmt->execute( array($ingresa) ))
{
while ($row = $stmt->fetch())
{
$this->compara[]=$row;
}

return $this->compara;
//$this->db=null;
}

}

y este el segundo metodo

public function getPlacasPriority()
{
//self::set_names();
$sql="select placa from placas_priority";
foreach ($this->db->query($sql) as $row)
{
$this->caracteristicas[]=$row;
}
return $this->caracteristicas;
$this->db=null;
}

Es muy loco por que encuentra las primeras igualdades, pero cuando llega a un numero que no tiene igualdad se comienza a saltar, con respecto a tu pregunta creería que hay un problema en el código y no en la consulta.

Saludos
  #4 (permalink)  
Antiguo 27/01/2015, 14:41
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Consulta rara

A ver si entendí:
¿Quiweres comparar el valor de dos campos, perteneceintes a dos tablas distitnas de una base de datos, por programación?



¿No sería más sencillo hacerlo por consulta en SQL?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 27/01/2015, 15:01
Avatar de sistecel  
Fecha de Ingreso: julio-2014
Ubicación: Colombia
Mensajes: 4
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Consulta rara

hola gnzsoloyo, si, por que necesito extraer otros campos de una de las dos tablas:

Tabla A, tiene un id y un campo placa

Tabla B, tiene un id y cinco campos mas entre ellos el campo placa que deberia contener los mismos numeros del campo de la tabla A,

necesito asignarle los campos de la tabla B a la tabla A pero de acuerdo al numerp de placa, esto en teoria deberia ser muy facil con el codigo que estoy usando pero me hace esa asignacion como hasta los primeros 80 registros despues se cuelga e iguala sin ser iguales asi como coloco en la imagen mas arriba.




Saludos
  #6 (permalink)  
Antiguo 27/01/2015, 15:09
Avatar de sistecel  
Fecha de Ingreso: julio-2014
Ubicación: Colombia
Mensajes: 4
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Consulta rara

Si yo hago este select:

$sql="select * from placas_priority where placa = 100086 ";

por que me trae 100088 ?

pero para ese mismo select los primeros 80 resultados si los trae bien?

Esto es una locura, se que estoy haciendo algo mal, pero ?

Etiquetas: fecha, select, tabla
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 14:08.