Ga naar inhoud

[PHP] Remote directorystructuur uitlezen


anoniem

Aanbevolen berichten

Goeiemorgen iedereen, Weet iemand hoe je met php vanuit systeem/domein A een complete directorystructuur (dus inclusief subdirectories) kunt uitlezen op systeem/domein B? Heb op A nl het CMS van B staan en probeer een file manager inelkaar te zetten. Waarom zou je zeggen? Omdat het zo mogelijk is om meerdere sites via hetzelfde CMS te beheren. Ik heb al aardig wat scripts versleten/inelkaar proberen te prakken maar helaas wil het maar niet lukken, hetzij met opendir()/readdir(), ftp_nlist() etc. Op dit moment gebruik ik de volgende code: [code:1:a2afe1df3d] <?php function GM_Readdir($ftp_connection, $dir) { unset($file_list); $file_list = ftp_nlist($ftp_connection, $dir); if (is_array($file_list)) { for ($i=0;$i<sizeof($file_list);$i++) { // for each file $st_file = $file_list[$i]; if (ftp_size($ftp_connection, $st_file) == -1) { // Directory - if so, use recursion echo "Dir: $st_file<br>"; GM_Readdir($ftp_connection, $st_file); } else { // File echo "File: $st_file<br>"; } } } else { echo "Nothing found"; } } // make a FTP connection $ftp_host = $Rs_site_definition_sel->Fields("ftp_host"); $ftp_host_directory = $Rs_site_definition_sel->Fields("ftp_host_directory"); $ftp_username = $Rs_site_definition_sel->Fields("ftp_username"); $ftp_password = $Rs_site_definition_sel->Fields("ftp_password"); $ftp_connection = ftp_connect($ftp_host,21); $login_result = ftp_login($ftp_connection,$ftp_username,$ftp_password); // this is the root path for the remote server $rootpath = $ftp_host_directory; $startpath = $Rs_site_globals_sel['root_path'].$Rs_site_globals_sel['default_imgdir']; if ((!$ftp_connection) || (!$login_result)) { echo "Ftp-connect failed!"; die; } else { ftp_pasv($ftp_connection, TRUE); if (ftp_chdir($ftp_connection, $ftp_host_directory.$Rs_site_globals_sel['default_imgdir'])) { echo "Current directory is now: " . ftp_pwd($ftp_connection) . "\n"; $dir = ""; GM_Readdir($ftp_connection, $dir); } else { echo "Couldn't change directory\n"; } } ?> [/code:1:a2afe1df3d] Het huidige resultaat is: [img:a2afe1df3d]http://www.jdm.nl/www_new/resultaat.jpg[/img:a2afe1df3d] Het eindresultaat zou er ongeveer zo uit moeten zien: [img:a2afe1df3d]http://www.jdm.nl/www_new/eindresultaat.jpg[/img:a2afe1df3d] Iemand een idee? Bedankt!
Link naar reactie
Hey maIRnaairruJ, Bedankt voor je reply. Ok, even ter verduidelijking: Stel ik heb op/onder http://www.google.nl/cms/ een CMS staan die je in staat stelt je met andere websites en hun databases te verbinden en de content hiervan aan te passen (met de voorwaarde dat de databasetabellen altijd hetzelfde zijn uiteraard). Tja je moet toch wat met je vrije tijd lol Stel dus dat ik een site heb op het adres http://www.website.nl/ met daarin een aantal standaard directories voor afbeeldingen, flash docs etc. Hoe kan ik nu via het CMS op het google domein deze directories/-structuur in zijn geheel uitlezen? Bijvoorbeeld: 'http://www.website.nl/images/' De bedoeling is uiteindelijk dat het CMS een Windows verkenner-achtige filemanager krijgt, met mapjes die in-en uitklappen, previews van de bestanden etc. Moet toch te doen zijn lijkt me? Ok, misschien moeten er wat rechten aangepast worden, maar dat lijkt me het probleem niet. Bedankt! :)
Link naar reactie
Haha, nee. Dat kan niet. Het programma moet toegang tot de harde schijf hebben, i.e. het programma moet op de harde schijf zelf staan of in het netwerk zitten. Zodrja je daarbuiten gaat, kan je even veel als een gewone gebruiker. Om beveiligingsreden. Je kan wel de cms installeren op de site waar je de directorystructuur wilt weergeven.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...