Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to use urlencode( ) in my example?

I checked php.net and read a few examples of how urlencode( ) works but somehow I just can't get it right. Can someone give me a hand?

it'll be a lot to example so hopefully my brief example would make sense.

I have a page called 2.php and it was called to show some contents of a .txt file choosen in 1.php.

I am told to make a link for 3.php and the link should look something like /3?filename=a.txt with filename as GET parameter name and Ensure GET parameter value is urlencoded using the urlencode( ) function.

but I'm confused how and where I should put urlencode() to make it work.

I'll paste my 2.php code here...I simplified the codes a bit...

<?php

$fileContents = file("./aaa/" . $_GET["course"] . ".txt");

echo "<table border=\"1\">";

foreach($fileContents as $row)
{
    echo "<tr>";
    $contents = preg_split("/,/", $row);

    foreach($contents as $eachline)
    {
        echo "<td>";
        if(!(preg_match("/@/", $eachline)))
        {
        echo trim(ucfirst($eachline));
        }
        else
        {
        echo trim(strtolower($eachline));
        }
        echo "</td>";
    }
    echo "</tr>";
}

    echo "</table>";

    echo "<a href='./1.php'>Choose another txt file</a><br/>";
    echo "or<br/>";
    echo "<a href='.3.php?'>Work with this txt file</a>";
?>

BUT…the 3.php option must have a query string appended to it: the name of the text file that was selected in 1, so instead of ./3.php, the url should be something such as ./3?filename=asdf.txt

Use “filename” as the GET parameter name. Ensure the GET parameter value is urlencoded using the urlencode( ) function.

but I'm just not sure how to get it to work....

like image 930
Dora Avatar asked Oct 04 '22 22:10

Dora


1 Answers

You can wrap the part that should be url encoded in the function within the string:

$url = 'http://www.google.com?q=' . urlencode($search);

OR in html

http://www.google.com?q=<?php echo urlencode($search); ?>

Where . is the concatenation of 2 outputs.

like image 128
Emery King Avatar answered Oct 10 '22 01:10

Emery King