Name Discoverer

Hello stranger!


Form

Name

PHP Source code:

<h1>Name Discoverer</h1>

<?php
    
# Lines that start with a hash are comments.
    // So are lines that start like this.
    /* So are ones like this. */

    # Check to see if there is "?name=something" provided in the URL
    
if ( isset($_GET['name']) )
    {
        
# If so, capture that info, and store it as "$name".
        
$name $_GET['name'];

        
# Capitalise the $name nicely.
        
$name ucfirst($name);

        
# Print a greeting using the name info.
        
printf("<p>Hello %s!</p>\n"htmlentities($name));
        
# The htmlentities() function is used to convert '<' to '&lt;' and
        # so on. It makes the text "html safe".
    
}

    
# Otherwise, we don't know who the user is, so print out a
    # generic greeting.
    
else
        print 
"<p>Hello stranger!</p>\n";

    
# The question-mark, greater than sequence below is used to
    # indicate the end of this block of PHP.
?>

<!-- so now we're just in normal HTML -->

<hr>
<h2>Form</h2>
<form action="/php-example" method="get">
    <fieldset>
        <legend>Name</legend>
        <label for="name">What is your name?</label>
        <!-- we dip back into PHP mode to pre-fill the form input -->
        <input name="name" id="name" value="<?= htmlentities($name?>">
        <input type="submit">
    </fieldset>
</form>
<hr>
<h2>PHP Source code:</h2>

<?php
    
# One last bit of PHP.

    # PHP supplies us with a useful function called highlight_file() which
    # reads in a PHP file and displays the source code nicely formatted.

    # We want to point the highlight_file() function at this page.
    
$thispage $_SERVER['SCRIPT_FILENAME'];

    
# Now show it!
    
highlight_file($thispage);
?>