Avatar billede eflow Nybegynder
03. februar 2002 - 02:14 Der er 15 kommentarer og
2 løsninger

problem med "+" tegnet

jeg har et problem med + tegnet, jeg prøvet at åbne nogle filer med er + tegn inde i.
f.eks. filen der hedder famillie+venner.txt, men det virker ikke den skriver:
Warning: file("c:\inetpub\wwwroot\famillie venner.txt") - No such file or directory in c:\inetpub\wwwroot\private\venner-fammillie.php on line 10.
der er mange filer der hedder sådan, så jeg kan ikke bare ændre det, der må findes et tegn af en slags for det.

jeg bruger det her til at åbne filen:

$fileresult = file($path);
if(count($fileresult)>1){
    for($i=0;$i<count($fileresult);$i++){
            $linjer .= htmlspecialchars($fileresult[$i]);
        }
                       
    }

}
echo "<pre>".$linjer."</pre>";

håber i kan hjælpe!!
Avatar billede eflow Nybegynder
03. februar 2002 - 02:15 #1
smutter foresten i seng nu, vil vende tilbage imorgen!
Avatar billede Noone Nybegynder
03. februar 2002 - 02:22 #2
Hmm... Prøv med en \ før mellemrummet i filnavnet. Hvis ikke det virker, så check at filen virkelig hedder det du tror den hedder.
Avatar billede cyborgsoftware Nybegynder
03. februar 2002 - 02:26 #3
Da php tror at "+" betyder at den skal plusse to ting, kan du måske bruge kommandoen: chr(43) istedet for.
dvs:
$path = "c:\inetpub\wwwroot\famillie".chr(43)."venner.txt";
$fileresult = file($path);
if(count($fileresult)>1){
    for($i=0;$i<count($fileresult);$i++){
            $linjer .= htmlspecialchars($fileresult[$i]);
        }
                       
    }

}
echo "<pre>".$linjer."</pre>";
Avatar billede oreilly Nybegynder
03. februar 2002 - 02:36 #4
$path = "c:\inetpub\wwwroot\famillie."+".venner.txt";
Avatar billede oreilly Nybegynder
03. februar 2002 - 02:36 #5
$path = "c:\inetpub\wwwroot\famillie"."+"."venner.txt";

:)
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 02:38 #6
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 02:40 #7
Og generelt: har du mystiske tegn i filnavne eller parametre i
URL-en, så hæld dem igennem urlencode:

http://www.php.net/manual/en/function.urlencode.php
Avatar billede eflow Nybegynder
03. februar 2002 - 11:00 #8
jeg kan ikke rigtigt få nogle af dem til at virke via noget replace :-( men jeg prøver da vidre!
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 11:05 #9
Du skal ikke bruge replace, du skal bruge urlencode,  eller
bare skrive det direkte i din <a href="...">
Avatar billede eflow Nybegynder
03. februar 2002 - 13:38 #10
urlencode virker ikke, da den osse replacer : og \, og jeg kan ikke skrive den direkte :-( da mit script ser i et dir efter txt filer, så det er ikke til at lave om :-((
nogen idé til hvordan det kan laves ?
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 14:10 #11
Nå, nej, du skal ikke erstatte hele din URL, men kun de
stumper, der kan være problemer i.
Avatar billede eflow Nybegynder
03. februar 2002 - 14:45 #12
ja, men hvordan finder jeg et + tegn i en tekst hvis den opfatter det som mellemrum ?
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 14:49 #13
Skal vi ikke lige tage tilbage til Adam og Eva. Altså, hvor opstår
problemet. Jeg har antaget, at der opstår i en URL, som står
i en <a href="....">... er det korrekt?
Avatar billede eflow Nybegynder
03. februar 2002 - 21:05 #14
erik>> ja det er korekt, men denne <a href=".."> bliver taget ud fra hvafor nogle filer der ligger i et givent bibliotek.
altså jeg tjekker hvadfor nogle filer der ligger i biblioteket "undersider", der ligger så nogle med et + i, dem skal jeg så ha replaced, men et tegn, men den vil ikke rigtigt :-(
jeg kan ikke smide noget kode da det er mere komplekst end som så :o(
Avatar billede erikjacobsen Ekspert
03. februar 2002 - 21:15 #15
1) Du kan roligt i din kode bruge "/" i stedet for "\" - også selv
om du er i Windows.

2) Du skal ikke urlencode alt, men kun fx
  print "<a href=\"http://dit.doma.ne/".urlencode($path)."\">$path</a>";
Avatar billede eflow Nybegynder
03. februar 2002 - 21:40 #16
erik>> jeg vidste faktisk ikke jeg kunne bruge / istedet for \, det hjælper mig meget, da jeg så slipper for en masse overflødig kode.

jeg ved godt jeg ikke behøver at encode alt, jeg encoder osse kun $path, men der står den fulde sti til biblioteket jeg vil have filer fra.....
Avatar billede eflow Nybegynder
21. februar 2002 - 23:14 #17
hmm, ingen svar der virkede...men point skal i have som tak for ulejligheden ;o)
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