Avatar billede benzon Praktikant
13. juni 2004 - 22:23 Der er 5 kommentarer og
2 løsninger

Udvinding af data ud fra fil navn

vi har en download sektion af demoer fra cs kampe på vores hjemmeside som det ser ud lige nu bruges en tekst fil til fil navne som vi selv taster ind manuelt, dog heder demo filerne ting som asylum_vs_euth-0405300354-de_dust2.tar.bz2  altså team1_vs_team2

Er det muligt at få den til at udvinde fra start og slutte af når den støder på tegnet -

og så lave en replace af _ med et mellem rum burde det ikke være muligt ?

Replace burde være simpel nok men den første del hvordan gøres dette?
Avatar billede coderdk Praktikant
13. juni 2004 - 22:31 #1
$fil = "asylum_vs_euth-0405300354-de_dust2.tar.bz2";
if ( preg_match( '/^(.*?)_vs_(.*?)-/i', $fil, $regs) )
{
  echo "Fight between $regs[1] and $regs[2]";
}
else
{
  echo "Not correct format...";
}
Avatar billede jaw Nybegynder
13. juni 2004 - 22:31 #2
<?
$handle=opendir('/mappe');
while (false !== ($file = readdir($handle))) {
    if($file != "." && $file != "..") {
        echo $file ."<br>";
    }
}
closedir($handle);
?>

Det der, vil udskrive filnavnene... Hvad er det du mener med - og _ og mellemrum?
Avatar billede coderdk Praktikant
13. juni 2004 - 22:39 #3
Erh, hvis du bare vil erstatte _ med mellemrum: str_replace( "_", " ", $fil );
Avatar billede benzon Praktikant
13. juni 2004 - 22:40 #4
coderdk det ser spændene ud det forslag du er kommet med helt klart.

og tror du har fat i det jeg skal bruge burde kunne integrere det i et mysql system så jeg gemmer de filer der bliver lagt public
Avatar billede jaw Nybegynder
13. juni 2004 - 22:46 #5
Medmindre jeg er mere træt end det er sundt, burde det her søge dit bibliotek igennem, og indskrive filnavnene i din database, medmindre de allerede findes:

<?
$handle=opendir('/mappe');
while (false !== ($file = readdir($handle))) {
    if($file != "." && $file != "..") {
    $q = mysql_query("SELECT * FROM tabel WHERE filnavn = '$file'");
    $antal = mysql_num_row($q);
    if($antal == 0) {
          mysql_query("INSERT INTO tabel(filnavn) VALUES('$file')");
        }
    }
}
closedir($handle);
?>
Avatar billede benzon Praktikant
13. juni 2004 - 22:47 #6
hehe ikke helt på den måde jaw

vi optager demoer fra mange kampe men kun nogle få der skal lægges online finaler and so on

og så er den måde coderdk viser meget meget nemmere da den udvinder hold navne
og det så bliver meget nemt og smide i mysql
Avatar billede jaw Nybegynder
13. juni 2004 - 22:49 #7
Hehe, så må jeg være meget træt, for det var sådan jeg forstod dit spørgsmål :/ Går bare i seng så, natter :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester