A little php help please :)

Status
Not open for further replies.

Unidentified

Living the Developer Life...
Jun 19, 2012
144
20
can anyone check this please because it will not work for me its a register page xenous made for me:
PHP:
<?php
 
require_once('include.php');
   
    function clean($input)
    {
        return mysql_real_escape_string(htmlspecialchars($input));
    }
   
    function rows($query)
    {
        return mysql_num_rows(mysql_query($query));
    }
   
        if(isset($_POST['firstname']) && isset($_POST['lastname']) && isset($_POST['gender']) && isset($_POST['dob']) && isset($_POST['email']) && isset($_POST['password']))
   
    {
        $fname = clean($_POST['firstname']);
        $lname = clean($_POST['lastname']);
        $gender = clean($_POST['gender']);
        $email = clean($_POST['email']);
        $password = clean(md5($_POST['password']));
        $dob = clean($_POST['dob']);
       
        if(!empty($password) && !empty($email) && !empty($fname) && !empty($lname) && !empty($gender) && !empty($dob))
        {
            if(is_int($dob))
            {
                if(rows("SELECT * FROM usersystem WHERE email_name_column='".$fname."'") < 1)
                {
                    //Insert it?
                    mysql_query("INSERT INTO usersystem (firstname, lastname, gender, email, column, joined) VALUES ('".$fname."', '".$lname."', '".$gender."', '".$email."', '".$password."', '".time()."')");
                    header("Location: somefuckingplace.php");
                }
                else
                {
                    //Email taken, should only check this as first names and last names will always clone;
                    echo '<!--Email Taken-->';
                }
 
            }
            else
            {
                //DOB ISNT IT?!
                echo '<!--Dob isn\'t in int form-->';
            }
        }
        else
        {
            //Empty fields error;
            echo '<!--Empty Fields-->';
        }
    }
 
?>
            <form method="post" name="registration" action="register.php">
                    <input type="text" class="email" name="email" placeholder="E-mail" />
                    <input type="text" class="fname" name="fname" placeholder="First Name" />
                    <input type="text" class="lname" name="lname" placeholder="Last Name" />
    <select id="dob_Month" name="dob_Month">
    <option value="-">Date</option>
    <option value="1">January</option>
    <option value="2">Febuary</option>
    <option value="3">March</option>
    <option value="4">April</option>
    <option value="5">May</option>
    <option value="6">June</option>
    <option value="7">July</option>
    <option value="8">August</option>
    <option value="9">September</option>
    <option value="10">October</option>
    <option value="11">November</option>
    <option value="12">December</option>
    </select>
    <select id="dob_day" name="dob_day">
    <option value="-">Of</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    </select>
    <select id="dob_year" name="dob_year">
    <option value="-">Birth</option>
    <option value="2011">2011</option>
    <option value="2010">2010</option>
    <option value="2009">2009</option>
    <option value="2008">2008</option>
    <option value="2007">2007</option>
    <option value="2006">2006</option>
    <option value="2005">2005</option>
    <option value="2004">2004</option>
    <option value="2003">2003</option>
    <option value="2002">2002</option>
    <option value="2001">2001</option>
    <option value="2000">2000</option>
    <option value="1999">1999</option>
    <option value="1998">1998</option>
    <option value="1997">1997</option>
    <option value="1996">1996</option>
    <option value="1995">1995</option>
    <option value="1994">1994</option>
    <option value="1993">1993</option>
    <option value="1992">1992</option>
    <option value="1991">1991</option>
    <option value="1990">1990</option>
    <option value="1989">1989</option>
    <option value="1988">1988</option>
    <option value="1987">1987</option>
    <option value="1986">1986</option>
    <option value="1985">1985</option>
    <option value="1984">1984</option>
    <option value="1983">1983</option>
    <option value="1982">1982</option>
    <option value="1981">1981</option>
    <option value="1980">1980</option>
    <option value="1979">1979</option>
    <option value="1978">1978</option>
    <option value="1977">1977</option>
    <option value="1976">1976</option>
    <option value="1975">1975</option>
    <option value="1974">1974</option>
    <option value="1973">1973</option>
    <option value="1972">1972</option>
    <option value="1971">1971</option>
    <option value="1970">1970</option>
    <option value="1969">1969</option>
    <option value="1968">1968</option>
    <option value="1967">1967</option>
    <option value="1966">1966</option>
    <option value="1965">1965</option>
    <option value="1964">1964</option>
    <option value="1963">1963</option>
    <option value="1962">1962</option>
    <option value="1961">1961</option>
    <option value="1960">1960</option>
    <option value="1959">1959</option>
    </select>
    <p></p>
        <select name="gender">
 
          <option value="">Gender</option>
 
          <option value="Male"> Male </option>
 
          <option value="Female"> Female </option>
 
        </select>
        <p> </p>
                    <input type="password" name="password" placeholder="Password" />
<input type="submit" value="Login" />
 

Unidentified

Living the Developer Life...
Jun 19, 2012
144
20
Validation Output: 4 Errors

  1. error.png
    Line 38, Column 30: character "'" not allowed in prolog
    echo '<!--Email Taken-->';
  2. error.png
    Line 45, Column 40: character "'" not allowed in prolog
    echo '<!--Dob isn\'t in int form-->';
  3. error.png
    Line 51, Column 29: character "'" not allowed in prolog
    echo '<!--Empty Fields-->';
  4. error.png
    Line 56, Column 4: no document type declaration; will parse without validation
    <form method="post" name="registration" action="register.php">
    The document type could not be determined, because the document had no correct DOCTYPE declaration. The document does not look like HTML, therefore automatic fallback could not be performed, and the document was only checked against basic markup syntax.
    Learn from our FAQ, or use the validator's Document Type option to validate your document against a specific Document Type.​
  5. warning.png
    Line 57, Column 73: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="email" name="email" placeholder="E-mail" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  6. warning.png
    Line 58, Column 77: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="fname" name="fname" placeholder="First Name" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  7. warning.png
    Line 59, Column 76: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="lname" name="lname" placeholder="Last Name" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  8. warning.png
    Line 176, Column 68: NET-enabling start-tag requires SHORTTAG YES
    <input type="password" name="password" placeholder="Password" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  9. warning.png
    Line 177, Column 36: NET-enabling start-tag requires SHORTTAG YES
    <input type="submit" value="Login" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
 

Unidentified

Living the Developer Life...
Jun 19, 2012
144
20
still got errors:
Notes and Potential Issues

The following notes and warnings highlight missing or conflicting information which caused the validator to perform some guesswork prior to validation, or other things affecting the output below. If the guess or fallback is incorrect, it could validation results entirely incoherent. It is highly recommended to check these potential issues, and, if necessary, fix them and re-validate the document.
  1. warning.png
    Unable to Determine Parse Mode!
    The validator can documents either as XML (for document types such as XHTML, SVG, etc.) or SGML (for HTML 4.01 and prior versions). For this document, the information available was not sufficient to determine the parsing mode unambiguously, because:
    • in Direct Input mode, no MIME Media Type is served to the validator​
    • No known Document Type could be detected​
    • No XML declaration (e.g <?xml version="1.0"?>) could be found at the beginning of the document.​
    • No XML namespace (e.g <html xmlns=" " xml:lang="en">) could be found at the root of the document.​
    As a default, the validator is falling back to SGML mode.​
  2. warning.png
    No DOCTYPE found, and unknown root element. Aborting validation.
    The DOCTYPE Declaration was not recognized or is missing. This probably means that the Formal Public Identifier contains a spelling error, or that the Declaration is not using correct syntax, or that document is not using a DOCTYPE Declaration.
    Without a DOCTYPE Declaration it is not possible to check the validity of your document. Since the document does not start with the root <html> element, automatic fallback to an HTML document type was not , and most of the validation process was aborted: only basic markup syntax was checked.
    Learn from our FAQ, or use the validator's Document Type option to validate your document against a specific Document Type.​
  3. info.png
    No Character encoding declared at document level
    No character encoding information was found within the document, either in an HTML meta element or an XML declaration. It is often recommended to declare the character encoding in the document itself, especially if there is a chance that the document will be read from or saved to disk, CD, etc.
    See for techniques and explanations.​
  4. info.png
    Using Direct Input mode: UTF-8 character encoding assumed
    Unlike the “by URI” and “by File Upload” modes, the “Direct Input” mode of the validator provides validated content in the form of characters or typed in the validator's form field. This will automatically make the data UTF-8, and therefore the validator does not need to determine the character encoding of your document, and will ignore any charset information specified.
    If you notice a discrepancy in detected character encoding between the “Direct Input” mode and other validator modes, this is likely to be the reason. It is neither a bug in the validator, nor in your document.​
Validation Output: 4 Errors

  1. error.png
    Line 38, Column 30: character """ not allowed in prolog
    echo "<!--Email Taken-->";
  2. error.png
    Line 45, Column 40: character """ not allowed in prolog
    echo "<!--Dob isn\'t in int form-->";
  3. error.png
    Line 51, Column 29: character """ not allowed in prolog
    echo "<!--Empty Fields-->";
  4. error.png
    Line 56, Column 4: no document type declaration; will parse without validation
    <form method="post" name="registration" action="register.php">
    The document type could not be determined, because the document had no correct DOCTYPE declaration. The document does not look like HTML, therefore automatic fallback could not be performed, and the document was only checked against basic markup syntax.
    Learn from our FAQ, or use the validator's Document Type option to validate your document against a specific Document Type.​
  5. warning.png
    Line 57, Column 73: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="email" name="email" placeholder="E-mail" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  6. warning.png
    Line 58, Column 77: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="fname" name="fname" placeholder="First Name" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  7. warning.png
    Line 59, Column 76: NET-enabling start-tag requires SHORTTAG YES
    <input type="text" class="lname" name="lname" placeholder="Last Name" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  8. warning.png
    Line 176, Column 68: NET-enabling start-tag requires SHORTTAG YES
    <input type="password" name="password" placeholder="Password" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
  9. warning.png
    Line 177, Column 36: NET-enabling start-tag requires SHORTTAG YES
    <input type="submit" value="Login" />
    For the current document, the validator interprets strings like <FOO /> according to legacy rules that break the expectations of most authors and thus cause confusing warnings and error messages from the validator. This interpretation is triggered by HTML 4 documents or other SGML-based HTML documents. To avoid the messages, simply remove the "/" character in such contexts. NB: If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.
    This warning and related errors may also be caused by an unquoted attribute value containing one or more "/". Example: <a href= . In such cases, the solution is to put quotation marks around the value.​
 
Status
Not open for further replies.

Users who are viewing this thread

Top