Tools, FAQ, Tutorials:
Protecting Special Characters in Query String in PHP
How To Protect Special Characters in Query String in PHP?
✍: FYIcenter.com
If you want to include special characters like spaces in the query string, you need to protect them by applying the urlencode() translation function. The script below shows how to use urlencode():
<?php
print("<html>");
print("<p>Please click the links below"
." to submit comments about FYICenter.com:</p>");
$comment = 'I want to say: "It\'s a good site! :->"';
$comment = urlencode($comment);
print("<p>"
."<a href=\"processing_forms.php?name=Guest&comment=$comment\">"
."It's an excellent site!</a></p>");
$comment = 'This visitor said: "It\'s an average site! :-("';
$comment = urlencode($comment);
print("<p>"
.'<a href="/processing_forms.php?'.$comment.'">'
."It's an average site.</a></p>");
print("</html>");
?>
If you copy this script as submit_comments.php to your Web server, and click the first link, you will get:
query_string = name=Guest&comment=
I+want+to+say%3A+%22It%27s+a+good+site%21+%3A-%3E%22
Number of values: 2
name = Guest
comment = I want to say: "It's a good site! :->"
If you click the second link, you will get:
query_string
= This+visitor+said%3A+%22It%27s+an+average+site%21+%3A-%28%22
Number of values: 1
This_visitor_said:_\"It\'s_an_average_site!_:-(\" =
Now you know that urlencode() all special characters into HEX numbers. To translate them back, you need to apply urldecode().
⇒ Supporting a Multiple-Page Form in PHP
2022-09-09, ∼5750🔥, 1💬
Popular Posts:
How To Loop through an Array without Using "foreach" in PHP? PHP offers the following functions to a...
How To Pass Arrays By References? in PHP? Like normal variables, you can pass an array by reference ...
How to access Query String parameters from "context.Request.Url.Que ry"object in Azure API Policy? Q...
How To Read the Entire File into a Single String in PHP? If you have a file, and you want to read th...
How To Open Standard Output as a File Handle in PHP? If you want to open the standard output as a fi...