Avatar billede tue Nybegynder
21. maj 2002 - 17:27 Der er 10 kommentarer og
1 løsning

Forståelse: urlencode

Jeg programmere normalt asp og kan derfor ikke helt forstå dette eksempel som jeg har fået fra min gateway leverandør:

$specialchar="xml=".urlencode("
      <gateway>
        <user>
          <login>XXXXXXXX</login>
          <password>XXXXXXXX</password>
        </user>
        <sms>
          <message>".htmlspecialchars("<&>")."</message>
          <lac>tdc1208</lac>
          <to>45XXXXXXXX</to>
        </sms>
      </gateway>
");

Jeg forstår godt at man skal bruge server.urlencode(var), men hvad betyder:

htmlspecialchars("<&>")

Hvilket udtryk har samme funktion i asp? (Hvis I ikke ved det, så forklar hvad linjen gør, så kan jeg måske selv tænke mig frem til en løsning)
Avatar billede mjl Nybegynder
21. maj 2002 - 17:33 #1
string htmlspecialchars ( string string [, int quote_style [, string charset]])


Certain characters have special significance in HTML, and should be represented by HTML entities if they are to preserve their meanings. This function returns a string with some of these conversions made; the translations made are those most useful for everyday web programming. If you require all HTML character entities to be translated, use htmlentities() instead.

This function is useful in preventing user-supplied text from containing HTML markup, such as in a message board or guest book application. The optional second argument, quote_style, tells the function what to do with single and double quote characters. The default mode, ENT_COMPAT, is the backwards compatible mode which only translates the double-quote character and leaves the single-quote untranslated. If ENT_QUOTES is set, both single and double quotes are translated and if ENT_NOQUOTES is set neither single nor double quotes are translated.
Avatar billede Thomas Nybegynder
21. maj 2002 - 17:34 #2
Se evt beskrivelsen på http://php.net/htmlspecialchars
Den konverterer blot <> og & til &lt;, &gt; og &amp;
Avatar billede mjl Nybegynder
21. maj 2002 - 17:34 #3
string urlencode ( string str)


Returns a string in which all non-alphanumeric characters except -_. have been replaced with a percent (%) sign followed by two hex digits and spaces encoded as plus (+) signs. It is encoded the same way that the posted data from a WWW form is encoded, that is the same way as in application/x-www-form-urlencoded media type. This differs from the RFC1738 encoding (see rawurlencode()) in that for historical reasons, spaces are encoded as plus (+) signs. This function is convenient when encoding a string to be used in a query part of an URL, as a convenient way to pass variables to the next page: Example 1. urlencode() example

echo '<a href="mycgi?foo=', urlencode($userinput), '">';
Avatar billede Thomas Nybegynder
21. maj 2002 - 17:35 #4
Den indsætter altså blot teksten <&> (&lt;&amp;&gt;) mellem <message> og </message>
Avatar billede jakoba Nybegynder
21. maj 2002 - 17:36 #5
funktionen htmlspecialchars("<&>") ondanner de udvalgte bogstaver til html-entities.
det vil i dette tilfælde sige at
<  bliver til  &lt;
&  bliver til  &amp;
>  bliver til  &gt;

bagefter skal der så evt urlencodes så det kan sendes via internettet. då derfter bliver & (ampersand) og ; (semikolon) lavet til %nn sekvenser som de skal ved url-encoding.

så det er to kodninger oveni hinanden. Den ene for at det kan sendes, og den anden for at html kan hitte ud af at bruge det efter det er ankommet til browseren.

mvh JakobA
Avatar billede jakoba Nybegynder
21. maj 2002 - 17:42 #6
man skal søreme være hurtig efterhånden :-)
Avatar billede mjl Nybegynder
21. maj 2002 - 17:42 #7
:o(
Avatar billede mjl Nybegynder
21. maj 2002 - 17:43 #8
Tja - men din danske formulering gav dig points!!
Avatar billede tue Nybegynder
21. maj 2002 - 17:44 #9
mjl >> Man får ikke noget for Kopier > Sæt ind... det er lige som i skolen :)
Avatar billede mjl Nybegynder
21. maj 2002 - 17:46 #10
ok tue...sorry - det var ikke for at genere dig!!! PHP-manualen kan altså lige så godt blive slettet?
Avatar billede jakoba Nybegynder
21. maj 2002 - 17:47 #11
Øh... Hov. Det var da også helt rigtig hvad mjl sagde.
så:
http://www.eksperten.dk/spm/214302

mvh JakobA
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

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