PHP SELECT THE WHERE col IN无法使用数组

时间:2012-07-08 21:13:14

标签: php mysql

我正在尝试使用从第一个查询获取的数据从MySQL中提取一些数据。 在此之后,一切都很好,一直到内爆,这对我来说是一件令人头疼的事。 有人能帮助我吗?

<?php

include("conect.php");

$colcod = $_POST['rubi'];

// $colcod = 'rubi';

include("config/conectar.php");
$colonias="SELECT zip FROM the_codes WHERE  coloni LIKE '%$colcod%' ORDER BY coloni";
$resultados = $asies->query($colonias);
    while ($fila = $resultados->fetch_array()){
      $codigo[]=$fila['zip'];
    }

array_pop($codigo);
$codigo = implode(', ',$codigo);
//print_r ($codigo); // <- Imprimimos para asegurarnos que todo está bien

$usuarios = "SELECT * FROM reg_temp WHERE zip IN ('".$codigo."') ";
$respuesta = $asies->query($usuarios);
while ($fila = $respuesta -> fetch_array()){
    $nombre = $fila['name'];
echo $nombre;
}
?>

1 个答案:

答案 0 :(得分:0)

$mycode = implode(', ',$mycode);已经在逗号分隔的字符串中转换了数组,因此您无需在join内使用IN(...)

$usr = "SELECT * FROM reg_temp WHERE zip IN('".$mycode)."')";
$results = $asies->query($usr);
while ($row = $results->fetch_array())
{
    $name = $row['name'];
    echo $name;
}

另请注意while ($row = $results-> fetch_arra()),这不对。