Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Urlencode Leerzeichen unterschiedlich ersetzt

Frage Entwicklung PHP

Mitglied: EvilMoe

EvilMoe (Level 2) - Jetzt verbinden

29.10.2012 um 20:20 Uhr, 2924 Aufrufe, 5 Kommentare

Guten Abend,

mir ist etwas merkwürdiges aufgefallen. Auf einer Seite nutze ich urlencode und urldecode.
Das merkwürdige ist das dass Leerzeichen unterschiedlich ersetzt wird, manchmal ein "%20" und manchmal ein "+". Soweit ich das gelesen habe dürfte ausschließlich ein "%20" kommen und wenn ich rawurlencode verwende ein "+".

Nun woran könnte das liegen? Gibt es eine PHP Einstellung dafür?



Sven
Mitglied: nxclass
30.10.2012 um 09:23 Uhr
Formulardaten in URLs werden zu "+", reine URL Teile zu %20

  • multipart/form-data MIME encoding und application/x-www-form-urlencoded wird Space zu "+"
  • rawurlencode "%20"
Bitte warten ..
Mitglied: EvilMoe
30.10.2012 um 09:25 Uhr
Hallo,

es handelt sich dabei nicht um Formulare.
Es geht um dynamische Links die damit escapet werden.


Sven
Bitte warten ..
Mitglied: bytecounter
30.10.2012 um 09:50 Uhr
Dann wären ein paar Infos mehr nicht schlecht. Ich hätte auch vermutet, dass es an Formulardaten liegt.

lg
Bitte warten ..
Mitglied: nxclass
30.10.2012, aktualisiert um 23:53 Uhr
Möglich dass nur "+" (altes encoding) verwendet wird wenn keine Sonderzeichen in dem zu "encodenden String" enthalten sind.
Am besten mal eine Liste mit Beispielen generieren.

edit:
01.
'www.google.de/s p a c e/?t e s t'
  • rawurlencode() alle spaces werden zu %20
  • urlencode() alle werden zu +

Evtl. ist das ein anzeige Problem - beachte das viele Browser den Code nochmal "Nachformatieren"
Bitte warten ..
Mitglied: EvilMoe
31.10.2012 um 22:30 Uhr
Das Problem ist leider doch etwas komplexer.
Wenn ich so ein Beispiel mache erscheint der richtige Output.

Ich verwende als Template und Cache Engine SMARTY. Ich verwende überall im Code NUR urlencode, KEINE andere Funktionen. Trotzdem sehe ich manchmal ein "%20" statt ein "+" in der URL. Vielleicht liegt es auch an SMARTY, ich weiß es nicht.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Administrator.de Feedback
gelöst Bug? "m f g" (ohne Leerzeichen) wird auch in URL ersetzt (7)

Frage von emeriks zum Thema Administrator.de Feedback ...

Batch & Shell
gelöst Schreiben eines Strings mit Leerzeichen in eine Datei (6)

Frage von c20082005 zum Thema Batch & Shell ...

Ubuntu
gelöst Wie kann man es tun? Alle Zeilen mit 2 und mehr Leerzeichen entfernen (1)

Frage von takitano zum Thema Ubuntu ...

Batch & Shell
gelöst Zeilen in TXT mit Leerzeichen auf eine bestimmte Länge auffüllen (4)

Frage von stingray14k zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Flatrates
DeutschlandLAN der Telekom - welche internen IPs? (19)

Frage von qualidat zum Thema Flatrates ...

Linux
gelöst Schmaler Scrollbalken in Python-Anwendung (14)

Frage von indi955 zum Thema Linux ...