2011-09-18 4 views
0

사진을 갤러리에 업로드 할 수있는 시스템을 만들고 해당 갤러리에 이름과 설명을 제공하고 원하는 많은 이미지와 연결할 수 있습니다. 이 작업을 수행하기 위해 MySQL과 PHP를 사용하고 있습니다. 나는 약간의 딜레마가 있지만 갤러리를 삭제하거나 갤러리를 다른 기본 갤러리로 설정하면 사용자가 갤러리에있는 모든 이미지를 삭제하도록 허용하고 싶습니다.SQL 또는 PHP 계단식 업데이트 및 삭제

데이터베이스를 설정하는 방법은 이미지 이름, 설명, 실제 이미지 이름 (.jpeg 이미지 의미) 및 갤러리 ID 필드가있는 이미지 테이블 두 개가있는 테이블입니다. 갤러리 테이블에는 이름, 설명 및 자체 ID가 포함되어 있습니다.

방금 ​​외래 키로 트리거를 계단식으로 연결하는 방법에 대해 조금 배웠지 만 작동 방식을 잘 이해하지 못하기 때문에 해결 방법이 될지 확실하지 않습니다. 내 주요 목표는 사용자가 갤러리를 삭제하고 갤러리 테이블에있는 모든 갤러리 ID를 업데이트하도록 허용하는 것이며, 모든 이미지는 삭제됩니다. SQL로 그렇게 할 수있는 방법이 없다면 PHP로 어떻게 할 수 있습니까? 나는 그것을 알아 내기 위해 노력하고 있었고 어떤 종류의 루프를 사용해야 할 수도 있다는 결론에 도달했습니다.

이 문제에 대한 도움을 주시면 감사하겠습니다.

+0

이 텍스트 블록을 단순하게 만들 수 있습니까? – Blender

+0

단락으로 분리하는 것을 잊어 버렸습니다. :) 나는 내가 적절한 조정을했다고 생각해. –

+1

그냥 도움을 얻을;) – Blender

답변

1

$gId = 34; 
$query = 'DELETE FROM `images` WHERE `gallery_id` = $gId'; 
$res = mysql_query($query); 

// or assign to new gallery 
$gId = 34; 
$newGid = 5; 
$query = 'UPDATE `images` set `gallery_id` = $newGid WHERE `gallery_id` = $gId'; 
$res = mysql_query($query); 

당신이 MySQL을 5.5에서 InnoDB의 테이블을 사용하는 경우, 당신은 방법을 설명하는 문서 here을 볼 수있는 사람 요청이 자신의 갤러리 중 하나를 삭제하고이 "34"의 ID를 가지고 있다면, 당신은 할 수 계단식 삭제 또는 업데이트를 수행하기 위해 제약 조건을 사용합니다.

+1

거룩한 모든 것들을 사랑하기 때문에, ** 제발 MySQL을 버려주세요 ** !!! – Blender

관련 문제