Archief - PHP: Lijst URL's automatisch updaten..

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Jayvie

Legacy Member
We zijn momenteel voor onze stage bezig aan een website voor een vereniging (met Joomla!)
Nu zouden we iets willen schrijven waarbij automatisch een lijst van URL's wordt geüpdate. Het gaat hier over links naar documenten van vergaderingen etc. Elke keer als iemand een nieuw bestand in een mapje upload, zou de URL-lijst aangepast moeten worden.
Het gaat ook over verschillende mappen op de server, met elk zijn bestanden (om het overzicht te behouden)

Zou dit mogelijk zijn?

PS: als mijn uitleg niet duidelijk is, vraag maar dan.

*edit* Ohja, dit MOET in PHP.

killgore

Legacy Member
gebeurt upload via php?

zo ja: lijst van url's bijhouden in mysql of .txt of zo telkens er wordt upgeload.

Zo nee: cron job die bv. om minuut de lijst update of heraanmaakt ...

Lint

Legacy Member
Waarom lees je niet simpelweg alle bestanden uit de mappen en ze zo 1 voor 1 omvormen tot een link naar dit bestand?
Dan heb je toch een lijst die dynamisch wordt aangevuld.

Dit is heel goed mogelijk met PHP.

WHiSPy

Legacy Member
Lint zei:
Waarom lees je niet simpelweg alle bestanden uit de mappen en ze zo 1 voor 1 omvormen tot een link naar dit bestand?
Dan heb je toch een lijst die dynamisch wordt aangevuld.

Dit is heel goed mogelijk met PHP.

Maar ook wel heel gevoelig voor beveiligingslekken. :)

killgore

Legacy Member
Lint zei:
Waarom lees je niet simpelweg alle bestanden uit de mappen en ze zo 1 voor 1 omvormen tot een link naar dit bestand?
Dan heb je toch een lijst die dynamisch wordt aangevuld.

Dit is heel goed mogelijk met PHP.
Omdat zo een script heel wat tijd (relatief gezien dus) kan kosten als het aantal files oploopt. Goed voor update via cron-job dus, maar niet om elke keer te laten uitvoeren.

Een db is juist gemaakt om een groot aantal records in op te slaan en dus sneller. Een txt file met nodige info is logischerwijs nog sneller, duurt wel langer om aan te maken als db & minder handig.

Daarnaast kan je met een db de data bundelen, alle info komt in 1 of 2 tabellen terecht.

+what whispy said

Lint

Legacy Member
WHiSPy zei:
Maar ook wel heel gevoelig voor beveiligingslekken. :)
Goed punt, maar het is wel makkelijk :p. En het risico kan imo toch nog altijd goed beperkt worden.


killgore zei:
Omdat zo een script heel wat tijd (relatief gezien dus) kan kosten als het aantal files oploopt. Goed voor update via cron-job dus, maar niet om elke keer te laten uitvoeren.

Een db is juist gemaakt om een groot aantal records in op te slaan en dus sneller. Een txt file met nodige info is logischerwijs nog sneller, duurt wel langer om aan te maken als db & minder handig.

Daarnaast kan je met een db de data bundelen, alle info komt in 1 of 2 tabellen terecht.

+what whispy said
Tijd: akkoord, maar het hangt er idd vanaf over hoeveel bestanden we spreken.
Update via cron-job is dan inderdaad een efficiëntere manier maar hier weer hangt het van de hoeveelheid af waardoor het misschien overbodig is.

Ps: Ik wil hier niet overkomen alsof ik denk dat ik de man ben ofzo want mijn kennis komt niet veel verder dan mijn stage en wat eigen prutswerk, maar ik hoor wel graag andere meningen.

WHiSPy

Legacy Member
Lint zei:
Ps: Ik wil hier niet overkomen alsof ik denk dat ik de man ben ofzo want mijn kennis komt niet veel verder dan mijn stage en wat eigen prutswerk, maar ik hoor wel graag andere meningen.

Ge probeert 'n positieve invloed te zijn op 't forum. Meer kunnen ze hier niet verwachten. We leren immers allemaal bij door de kennis van andere mensen.

killgore

Legacy Member
Lint zei:
Ps: Ik wil hier niet overkomen alsof ik denk dat ik de man ben ofzo want mijn kennis komt niet veel verder dan mijn stage en wat eigen prutswerk, maar ik hoor wel graag andere meningen.
Lol :), zo komde zeker nie over ze ;), trust me, dan reageer ik anders :p, ik ben vrij arrogant tov dergelijke mensen.

Uw oplossing is ook goed ze, alleen wat minder dynamisch en dus niet geschikt voor situaties met veel files of een onbekend aantal files (bv. distributed script ;)).

blackrabbit

Legacy Member
Bestanden inlezen uit een dir gaat héél snel hoor..

Ik heb een script dat een search-index aanlegt van bestanden op mijn FTP.
Dat script gaat van de hele gedeelde array (1.5TB) alle mappen (en bestanden) af. We spreken hier dus over een héle lange lijst.
Die lijst wordt aangemaakt op enkele seconden...


No worries dus ;)





Maar een oplossing met file-IDs lijkt me ook wel beter (voor de veiligheid dan)

|M°B|Morbuus

Legacy Member
Enkele seconden??

Al eens met een db geprobeerd?

Ik ben het eens met killgore, je kan zo bepaalde files ook afschermen wat je bij die foldercaching niet hebt.

LunchBox

Legacy Member
Nu kan je toch ook afschermen, gewoon niet laten uploaden naar die bewuste directory als het privaat moet bijven. (of een file doorlopen die de beschermde bestanden eruit filtert bij het opstellen van de lijst) Het zal wel zijn veiligheids-minpunten kennen, maar dat het "traag" is lijkt me overdreven. (zowieso al een relatief begrip)

blackrabbit

Legacy Member
|M°B|Morbuus zei:
Enkele seconden??

Al eens met een db geprobeerd?

Ik ben het eens met killgore, je kan zo bepaalde files ook afschermen wat je bij die foldercaching niet hebt.
Het aanmaken van de index (=in DB) duurt enkele seconden.
Hele apllicatie draait op de DB.

Xerionth

Legacy Member
Ik heb voor onze chirosite ook zo'n systeem gebouwd waar onze verslagen komen. Ik heb daarbij gebruik gemaakt van php om het bestand , wat commentaar endatum via een form in te lezen en dan naar een database te versturen.
Maar zoals er al een paar keer gezegd is zit ik dus met een beveiligingsprobleem :) Je kan gewoon naar de map met bestanden surfen en downloaden. Als ik er een htacces opzet kreeg ik niets meer up of down :/
Ik heb al wel zitten experimenteren met htacces maar het heeft nog niet veel uitgehaald :) Dus als er ideeën moesten zijn? :)

|M°B|Morbuus

Legacy Member
Xeri, daar gaat het hier niet helemaal over.

Btw, je kan bestanden laten doorgeven via php. Zo kan je dus je bestanden afschermen met htaccess en dan wel laten downloaden.

WHiSPy

Legacy Member
blackrabbit zei:
Het aanmaken van de index (=in DB) duurt enkele seconden.
Hele apllicatie draait op de DB.

Enkele seconden? Dat zou me toch wel verbazen, hoor. Dat zal enkel zo zijn als ge uw indexen slecht gekozen hebt. :)

killgore

Legacy Member
LunchBox zei:
Nu kan je toch ook afschermen, gewoon niet laten uploaden naar die bewuste directory als het privaat moet bijven. (of een file doorlopen die de beschermde bestanden eruit filtert bij het opstellen van de lijst) Het zal wel zijn veiligheids-minpunten kennen, maar dat het "traag" is lijkt me overdreven. (zowieso al een relatief begrip)
Traag is idd relatief, hebbek hiervoor ook gepost d8 ik. Ma die "kleine" winst kan wel belangerijk worden als uw site vrij veel bezoekers heeft of die bepaalde pagina gewoon extreem veel (moet) opgevraagd worden.

enneuh, tgaat niet alleen om grote van de map da ge doorzoekt ma aantal files he.

Daarnaast is een db-system gewoon extreem veel simpeler om mee te werken als alles constant dynamisch ophalen.
Ga jij mssch alle files aflopen als je een lijstje wilt maken van laatste 10 toegevoegde files ... ?

edit: @ Lunchbox: enkel die eerste zin was reply op uw quote ze, om misverstanden te voorkomen :p.

blackrabbit

Legacy Member
WHiSPy zei:
Enkele seconden? Dat zou me toch wel verbazen, hoor. Dat zal enkel zo zijn als ge uw indexen slecht gekozen hebt. :)
Er wordt geen tijd verloren met het inserten he, wel het doorlopen van alle dirs is 'tijdrovend'.

Heb het even getest: 14516 rows in 4.0213s
(met 'row' zijnde een bestand)

Jayvie

Legacy Member
Hmm, bedankt voor de reacties alvast. Kga der vandaag is wa mee prulle se

Jayvie

Legacy Member
Vandaag verdere instructies gekregen:

Er zijn verschillende mappen op de server. In elk van die mappen zit een aantal bestanden. Er komen af en toe hier en daar wat bestanden bij.

Momenteel moet iemand in Joomla! de html-code gaan aanpassen, en zo link per link toevoegen, als er nieuwe documenten zijn. Hij zou dus een lijstje willen van alle bestanden/links, zodat deze nog maar te copy-pasten zijn in die html code.. Of het mag ook op een andere manier.

Dit moet dus in PHP, aangezien Joomla in php is... Maar nu: ik ben geen programmeur, ik doe netwerk- en systeembeheer. Maar voor het eerste deel van mijn stage moesten we een website bouwen + toepassingen maken in php. Ik heb al wel wat php geleerd, maar om aan zoiets te beginnen, geen idee...

EDIT: Eigelijk kan dit ook in VB ofzo, maar tis de bedoeling dat het in PHP gebeurt. Dus een scriptje uitvoeren dat mappen op de ftp checkt :\

killgore

Legacy Member
http://be2.php.net/readdir : daar staan genoeg voorbeelden en zo om je denk ik momenteel verder te helpen ;).

Als het echt op ftp moet zijn:
http://be2.php.net/ftp
die functies zijn vrij intuïtief en er zijn ook genoeg vbn op site beschikbaar, als je specifiekere vragen hebt kan je altijd hier weer komen ;)!
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan