[php]wat te doen met een 'Spatie' ( %20 )

Pagina: 1
Acties:
  • 205 views sinds 30-01-2008
  • Reageer

  • BPG908
  • Registratie: Oktober 2001
  • Laatst online: 15-07 14:01

BPG908

Ik ben bijna jarig !

Topicstarter
Hey, ik heb een Vraag.
Stel, Ik heb een url:

http://domein.com/download.php?url=http://www.blabla.com/eendownload.mp3%20
en ik heb een script
( Download.php )
<?
$url = $url
?>

<? echo $url ?>

Hoe kan ik verkomen dat hij de %20 er uit gooid ??
Moet ik dan iets veranderen ofzo ?

Alvast bedankt.
GreetZ

  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03

Engineer

Software

.

[ Voor 100% gewijzigd door Engineer op 13-10-2018 22:47 ]


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

hebben we daar trim niet voor :?

Stop uploading passwords to Github!


Verwijderd

Op donderdag 03 januari 2002 18:17 schreef BPG het volgende:

Hoe kan ik verkomen dat hij de %20 er uit gooid ??
Moet ie er nou uit of in blijven staan?

  • BPG908
  • Registratie: Oktober 2001
  • Laatst online: 15-07 14:01

BPG908

Ik ben bijna jarig !

Topicstarter
Ik bergijp het nog steeds niet.

Die "%20" = Spatie moet aan het einde blijfen staan.
maar dat gebeurd nu NIET.
dat moet dus WEL gebeurden.
dat is het probleem

Ik heb echt al heel veel geprobeerd.
maar niks lukt :-(

Michien iemand, een oplossing en een uitleg die ik bergijpen kan ( ik ben een beginner )

Albast bedankt :)

  • eamelink
  • Registratie: Juni 2001
  • Niet online

eamelink

Droptikkels

Wie / wat gooit dan die spatie eruit???

  • M4RTiN
  • Registratie: Augustus 2000
  • Laatst online: 24-11-2024
<?$tekst = str_replace(" ","%20",$tekst);?>

juist andersom :?

Verwijderd

Dat vind ik zo vies! :r een hele zin meesturen bah! gewoon netjes een id meesturen en opzoekn wat het is.. veek netter

Verwijderd

Een ID meesturen vind ik idd ook een veel mooiere oplossing, maar als je dat nog niet kan(/of natuurlijk niet wil, om welke reden dan ook :?), kan je met bovenstaande oplossingen dat wel bereiken.
PHP converteerd een %20 in een argument altijd direct naar een spatie tenzij je dat anders maakt met een functie of in php.ini. Apache maakt van een %20 altijd een spatie (escape spatie uiteraard ;)). Dus kan je met bovengenoemde str_replace genoeg om vervolgens te redirecten naar die URL met die spatie erin.

BPG: scripten = uitzoeken..
Succes..

Verwijderd

<oftopic>
Ej bpg jij hier ook al
<oftopic>

Sorry modjes voor de weinige inbreng van mij hier

Verwijderd

Als je die %20 er achter wilt laten staan, is de url fout. Het zou moeten zijn:
code:
1
http://domein.com/download.php?url=http://www.blabla.com/eendownload.mp3%2520

Als je in de URL (achter het vraagteken) speciale tekens wilt gebruiken, zoals de % moeten ze encoded worden. %25 is een procent-teken. Het = teken is %3d.

Dus als je een URL samensteld moet je urlencode waarschijnlijk gebruiken (ik ben geen php-er).

Verwijderd

volgens mij gooit je browser automatisch de extra spaties op het einde weg, niet?

  • Koen_R
  • Registratie: Juni 1999
  • Laatst online: 15:56
Misschien zie ik het verkeerd, maar kijk je uit voor je beveiliging als je op deze manier werkt

als 1 of andere gast nou dit invuld:
http://domein.com/download.php?url=./../../password.etc

Bij wijze van spreken natuurlijk, maar een beetje handige jongen komt op die manier zo je server binnen.

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

titel aangepast

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Als de browser de dader is kun je misschien dit proberen:

http://domein.com/download.php?url=http://www.blabla.com/eendownload.mp3%20&tralalala=onzin

Dan staat die spatie niet meer aan het eind...

Localhost, sweet localhost

Pagina: 1