2012-01-08 2 views
0

저는 PHP가 처음이에요. 배열에 들어가서 루프를 던지고 있어요. 의도 한 말장난. 아래의 모든 것은 지금까지 내가 필요로하는 것을 나에게주고있다. $ datum에는 제출 ID 배열이 있습니다. 다음으로 할 일은 테이블을 쿼리하여 모든 제출 ID를 $ IDum의 이미지 ID 열과 일치시키고 그 결과를 모든 이미지 ID가 들어있는 배열에 저장하는 것입니다. 그런 다음 각 이미지 ID의 파일 이름을 가져 와서 SELECT 상자에 넣기 위해 이미지 테이블을 쿼리해야합니다. 배열과 함께 루프를 작동하는 방법을 모르겠다. 나는 각각을 위해 그리고 내가 필요로하는 것을 할 수 없다. 필자는 이드가 코드 밑에있는 평범한 영어로하기를 원하는 것을 넣는다. 어떤 도움을 주셔서 감사합니다. 무엇 ID 할 LIKE배열을 기반으로 mysql 열의 값 배열을 얻는 방법

<?php 
$mask5 = $_GET["var1"]; 
require("codebase/grid_connector.php"); 
$res = mysql_connect("", "", ""); 
mysql_select_db("supplydb"); 
//Get Category ID 
$cat = mysql_query("SELECT category FROM submissions WHERE submissions.submission_id='$mask5'"); 
$rows = mysql_fetch_array($cat, MYSQL_ASSOC); 
$array = $rows['category']; 
//Get Manufactuer ID 
$man = mysql_query("SELECT manufacturer_id FROM submissions WHERE submissions.submission_id='$mask5'"); 
$arows = mysql_fetch_array($man, MYSQL_ASSOC); 
$array1 = $arows['manufacturer_id']; 
//Get All Submission ID's for this popup 
$datum = array(); 
$result = mysql_query("SELECT submission_id FROM submissions WHERE submissions.category='$array' AND submissions.manufacturer_id='$array1'"); 
while ($rowd = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    $datum[] = $rowd; 
} 

////// .......

mysql_query("SELECT image_id FROM imagsub WHERE image_id = $datum[]... 

$ 응답 = THEN 결과 상기

mysql_query("SELECT filename FROM images WHERE image_id = $answers[] 
에서 새로운 배열

THEN

선택 상자에 넣습니다.

이 중 일부는 어려움을 겪을 수 있지만 지금은 다른 배열을 기반으로하는 테이블의 한 열에서 값 배열을 가져올 수 없습니다. 나머지 도움은 그레이비에 불과합니다. 미리 감사드립니다.

+0

선택 상자가 나쁜 용어 인 경우 메뉴를 드롭 다운하는 것을 의미합니다. 다시 감사합니다 .. –

답변

0

PHP 쪽에서하는 대신 테이블간에 모든 데이터를 조인하는 쿼리를 만드는 것이 더 간단 할 수 있습니다. 데이터베이스와 테이블 관계를 이해하는 것은 어렵지만, SQL 측에서는 분명히이를 수행하고, 결합하려는 각 테이블에 대해 매번 데이터베이스를 쿼리하지 마십시오.

+0

조언을 주셔서 감사합니다. 배열을 사용하여 주어진 테이블의 열에있는 모든 일치하는 결과를 쿼리하는 간단한 쿼리 예제를 제공 할 수 있습니까? 그것이 내가 끊어지는 곳이며 어디에서 어떤 예를 찾을 수 없었습니다. 뭔가 일반적인 것이 도움이 될 것입니다. 감사! –

+0

'$ 질의 = "TABLE SELECT * WHERE ID IN (0"; 의 foreach ($ 값으로 $ 배열) { $ 쿼리 = $ 쿼리 "$ 값; . $ 쿼리 = $ 쿼리.}') "; ' – xmc

+0

도움을 주셔서 감사합니다. 그것은 올바른 경로로 나를 보내 보냈지 만 완성 된 newb를 소화하기가 다소 힘들어서 mysql 검색을 위해 배열을 사용하는 코드를 찾았습니다. location_id가 숫자 인 경우 –

0

datum 쿼리에서 image_id와 filename에 가입해야합니다. 또한 mysql_*을 사용하지 말고 PDO 또는 다른 래퍼를 사용하는 것이 좋습니다. 특히 _GET으로 획득 한 경우 입력 내용을 최소한으로 위생해야합니다.

관련 문제