php dir listing op basis van $var filename

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo,
Situatieschets:
Mysql database met personen, elk persoon heeft uniek persoonsnummer.
Op server map images met foto's van personen. Bestandsnaam bestaande uit:
- persoonsnummer_001.jpg
Van de verschillende personen zijn er echter meerdere foto's die niet oplopend zijn
Zo zijn er van persoon X (persoonsnummer 012) de volgende foto's:
- 012_001.jpg
- 012_012.jpg
- 012_100.jpg
Van elk persoon is altijd foto persoonsnummer_001.jpg aanwezig, de andere zijn variable.

Helaas beslis ik zelf niet over de bestandsnamen, anders had ik alle foto's hernoemt uiteraard in oplopende nummers.

Bij een link naar een detailpagina van een persoon opent zich op basis van het persoonsnummer een pagina waar de eerste foto (persoonsnummer_001.jpg) zichtbaar is met daaronder vorige volgende knoppen die linken naar de desbetreffende andere foto's in de dir images. Hierbij staat ook het aantal foto's dat aanwezig is van deze persoon (bijv. 1 van 6 foto's)

Hoe filter ik uit de totale dir alleen die foto's die bij het persoonsnummer hoort?

Hopelijk is dit verhaal duidelijk en kunnen jullie mij helpen.

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17-09 23:59

TeeDee

CQB 241

Ik zou dit gewoon lekker door je database server regelen.

SELECT * FROM blaat WHERE foto LIKE 'persoonsnummer%'

zoiets dus.

Of denk ik te simpel :)

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • pistole
  • Registratie: Juli 2000
  • Laatst online: 17-09 21:27

pistole

Frutter

Je hebt die foto's niet in je database staan, dus je zult met een `ls` of `for each blaat` iets moeten doen

ennehh.... wildcards? Does it ring a bell?

Ik frut, dus ik epibreer


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
laat ik het anders zeggen (bedankt trouwens voor de snelle reactie)

ik heb een directory waar heel veel foto's in staan. Elk afzonderlijk bestand begint met een spelersnummer gevolgd door een _ en een volgnummer.
Op basis van een selectie wil ik alleen die bestanden uit de directory hebben die als spelersnummer 10 bevatten (in de bestandsnaam de waarde voor de underscore is variable)
Hoe voor ik het filter uit op de directory?

Acties:
  • 0 Henk 'm!

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09 14:42
Verwijderd schreef op 17 maart 2003 @ 16:09:
laat ik het anders zeggen (bedankt trouwens voor de snelle reactie)

ik heb een directory waar heel veel foto's in staan. Elk afzonderlijk bestand begint met een spelersnummer gevolgd door een _ en een volgnummer.
Op basis van een selectie wil ik alleen die bestanden uit de directory hebben die als spelersnummer 10 bevatten (in de bestandsnaam de waarde voor de underscore is variable)
Hoe voor ik het filter uit op de directory?
Je opent de dir en je kijkt door middel van een regex welke file-names het nummer en dan een _ bevatten :)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb nu dit stukje code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
function CheckExt($filename, $ext) {
$passed = FALSE;
$testExt = "\.".$ext."$";
if (eregi($testExt, $filename)) {
$passed = TRUE;
}
return $passed;
}
$exts = array("gif","jpg$|\\.jpeg","png","bmp");
$dir = opendir('.');
$files = readdir($dir);
while (false !== ($files = readdir($dir))) {
foreach ($exts as $value) {
if (CheckExt($files, $value)) {
echo "<a href=\"$files\">$files</a>\n";
$count++; 
break; 
}
}
}
closedir($dir);
?>

Nu nog een filter waarin bijvoorbeeld var $persoonsnummer aangeeft welke listing er moet komen op basis van wat er voor de _ staat.

Ik heb gekeken naar de bovengenoemde links maar ben nu nog niet tot een werkend stukje code gekomen, ge ook verder lezen maar misschien is de aanpassing zo eenvoudig dat er iemand is die dit eenvoudig kan aanpassen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
zmn schreef op 17 March 2003 @ 16:11:
[...]

Je opent de dir en je kijkt door middel van een regex welke file-names het nummer en dan een _ bevatten :)
mooi gezegd en klinkt eenvoudig maar....hoe?
Pagina: 1