Sarinha Posted May 13, 2013 at 09:37 AM Report #507071 Posted May 13, 2013 at 09:37 AM (edited) Olá, Eu gostava de saber, se tem como alguém e ajudar. Eu tenho uma base de dados, onde tem nessa base de dados tem varias tabelas, a tabela que eu estou a usar é a tb_prjects. E tenho também uma pasta no meu computador com varias pastas dentro, a que estou a utilizar é a pasta cli e dentro tou a usar a pasta idCli1. O que eu quero fazer é o seguinte comparar as pastas que são dentro do idCli1 com a o campo da ProjectName que está dentro da tabela tb_project. o que eu já fiz foi o seguinte: -> Ir a base de dados buscar os nomes da campo projectName: include "connect.php"; $query = "SELECT * FROM tb_projects WHERE statusProject = 0 and projectName like 'p%'"; $result = mysql_query($query); while($row=mysql_fetch_assoc($result)) { echo "<br/> Nome - ".$row['projectName']; } -> Ir a pasta idCli1 e listar os nomes das pastas dentro da mesma: function listFolderFiles($dir) { $ffs = scandir($dir); foreach($ffs as $ff) { if($ff != '.' && $ff != '..') { if(!is_dir($dir.'/'.$ff)) { } else { echo '<br/>pasta - ' . $ff; } } } } listFolderFiles('../../www/m7tv/cli/idCli_1'); Agora o que eu quero é comprar os nomes das pastas com os nomes dos campos da tabela e se o nome da primeira pasta não existir na base de dados apaga a pasta toda, senao se existir passa para a segunda e vai percurre a base de dados toda, até a ultima pasta. Será que me podem ajudar? Obrigada, fico muito agradecida. Edited May 14, 2013 at 08:10 AM by brunoais geshi
HappyHippyHippo Posted May 13, 2013 at 10:06 AM Report #507075 Posted May 13, 2013 at 10:06 AM // http://stackoverflow.com/questions/1407338/a-recursive-remove-directory-function-for-php function destroy_dir($dir) { if (!is_dir($dir) || is_link($dir)) return unlink($dir); foreach (scandir($dir) as $file) { if ($file == '.' || $file == '..') continue; if (!destroy_dir($dir . DIRECTORY_SEPARATOR . $file)) { chmod($dir . DIRECTORY_SEPARATOR . $file, 0777); if (!destroy_dir($dir . DIRECTORY_SEPARATOR . $file)) return false; }; } return rmdir($dir); } } $projectos = array(); $sql = "..."; // o SQL para ler TODOS os projectos não activos $recordset = ...; // ler a info da base de dados foreach ($recordset as $record) { $projectos[] = $record['projectName']; } if ($handle = opendir('/path/to/files')) { // abrir directorio while (($entry = readdir($handle)) !== false) { // ciclo de leitura do directorio if (is_dir($entry)) { // ignorar ficheiros $dirname = substr($entry, strrpos('/', $entry)); if (array_search($dirname, $projectos) === false) { // verificar se exista na lista de projectos desactivados destroy_dir($entry) // remover directorio } } } closedir($handle); } IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
Sarinha Posted May 13, 2013 at 10:22 AM Author Report #507077 Posted May 13, 2013 at 10:22 AM Olá, eu tenho que tirar aquilo que tenho e colocar o que você mandou?
HappyHippyHippo Posted May 13, 2013 at 10:25 AM Report #507079 Posted May 13, 2013 at 10:25 AM Olá, eu tenho que tirar aquilo que tenho e colocar o que você mandou? é um código feito de cabeça (tirando a função tirada do stackoverflow) que deverá fazer o que pretendes, apesar de teres de adaptar ao teu código como a criação do SQL e leitura dos dados da base de dados. se não quiseres usar, podes sempre tirar ideias IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
Sarinha Posted May 13, 2013 at 10:27 AM Author Report #507080 Posted May 13, 2013 at 10:27 AM Obrigada, vou ver se consigo colocar a funcionar, que de funções não entendo nd... Obrigada na mesma.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now