/ / inserindo a mesma consulta de múltiplos array - php, mysql, sql

inserindo a mesma consulta de múltiplos array - php, mysql, sql

Eu faço uma função mathematichs no mysql. e dê dois resultados porque é calculado a partir de 2 registros. esta é a fonte:

$calculate= mysql_query("select markers_tujuan.lng,markers_tujuan.lat,open_list.lat, open_list.lng,
((SQRT((((markers_tujuan.lat-markers_tujuan.lng)*(markers_tujuan.lat-markers_tujuan.lng)) + ((open_list.lat-open_list.lng)*(open_list.lat-open_list.lng)))))+(sqrt((((markers_tujuan.lat-open_list.lat)*((markers_tujuan.lat-open_list.lat)))+((markers_tujuan.lng-open_list.lng)*((markers_tujuan.lng-open_list.lng)))))))
as hasil
from markers_tujuan, open_list");

$op=mysql_query("select * from open_list");
$line=mysql_fetch_assoc($op);


/* fetch associative array */
while ($row = mysql_fetch_assoc($calculate)) {
printf ("1(%s %s),(%s %s),%s <br> n", $row["lng"], $row["lat"], $row["lat"], $row["lng"], $row["hasil"]);
$try=mysql_query(" UPDATE open_list SET hitung = "".$row["hasil"]."" ");
}

e o resultado é php em execução

mas eu não entendi porque query no mysql atualizando a mesma query

consulta de erro

Respostas:

1 para resposta № 1

Como outros apontaram, sua instrução UPDATE não possui uma condição WHERE. Portanto, todas as linhas da sua tabela serão atualizadas sempre:

mysql_query(" UPDATE open_list SET hitung = "".$row["hasil"]."" ");

Você deve especificar a PRIMARY KEY durante a atualização. Neste caso, é a coluna id (Eu presumo). Exemplo:

UPDATE open_list SET hitung = "example" WHERE id = "4"

0 para resposta № 2

Você deve adicionar SELECT open_list.id,... na sua primeira consulta e WHERE id = " . $row["id"] na frase de atualização.