이것은 다소 실용적이지만,이 문제를 "올바르게하는 것"에 대한 운동으로 더 다가 가겠습니다.
나는 각 테이블의 간단한 선택을하고 배열에 삽입합니다 : 나는 것 다음 출력
$java_array1 = "var Cities = new Array;\n";
foreach($cities as $key=>$city) $java_array1 .= "Cities[$key] = \"$city\";\n";
$java_array2 = "var Prices = new Array;\n";
foreach($cities as $key=>$price) $java_array2 .= "Prices[$key] = new Array(
\"{$price[0]}\",
\"{$price[1]}\",
\"{$price[2]}\",
);\n";
:
$query1 = "SELECT * FROM cities";
$query2 = "SELECT * FROM prices";
$results1 = mysql_query($query1);
$results2 = mysql_query($query2);
while($rows = mysql_fetch_array($results1)) $cities[] = $row['name'];
while($rows = mysql_fetch_array($results2)) $prices[] = array(
$row['city1_id'],
$row['city2_id'],
$row['name']
);
내가 동적으로 두 개의 자바 스크립트 목록을 만들려면이를 사용합니다 각 셀에 대해 신중하게 만들어진 ID가있는 테이블 첫 번째 대답과 비슷한 코드를 사용 하겠지만 각 셀에 "cell-<row>-<col>"
이라는 고유 ID를 부여합니다.
마지막으로해야 할 일은 onload
자바 스크립트로 채우고 적절한 페어링을 사용합니다. 내 자바 스크립트는 매우 녹슨이지만, 그것은 다음과 같이 보일 것입니다 (: 의사는 다음 주) :
n = 1;
for(var i in cities)
{
// set city names on the diagonal
document.getElementById('cell-'&i&'-'&i).innerHTML = names[i];
n = n + 1;
}
for(var j in prices)
{
// use the city IDs in the prices array (see earlier code initializing
// prices array) to place the prices
document.getElementById('cell-'&prices[1]&'-'&prices[2]).innerHTML = prices[0];
}
내가 거의 확실히 자바 스크립트의 일부를 엉망; 자신의 책임하에 사용하십시오.
이것은 위에 주어진 간단한 대답보다 훨씬 복잡하지만이 방법을 사용하면 "이해할 수 있습니다"라고 생각할 수있는 유일한 방법입니다. 기본적으로이 방법을 사용하면 이 어디에 있어야합니까?이되어야하며 이상한 테이블과 이상한 선택에 대해 걱정할 필요가 없습니다.
아직 데이터를 배열이나 개체로 가져 왔습니까? – strager
그건 그렇고, 귀하의 질문에 링크 인증이 필요합니다. 관련 부품을 다른 곳으로 미러링하십시오. – strager
의견을 보내 주셔서 감사합니다! 게시물을 수정 했으므로 이미지를 볼 수 있습니다. 데이터를 배열로 가져 오지 못했지만 문제가되지 않습니다 ...이 대각선 테이블을 인쇄하는 알고리즘을 작성하는 데 도움이 필요합니다. –