problem with checkbox

Discussion in 'Software' started by speed1972, Jun 28, 2009.

  1. speed1972

    speed1972 Private E-2

    Ok so i've nearly finished my site and i'm left with 2 small annoying problems. The first one is that it doesn't matter whether or not someone checks the terms and conditions checkbox, the form still submits.

    The second is that when someone enters a £ sign in a field, when i recieve the email after its submitted the £ sign has a capital A with an arrow above it in front of the £ sign.



    Hopefully 2 easy to fix problems, here is the code for my page. I know its bad in many ways but it works and looks fine when uploaded.



    <?php
    ini_set('display_errors', 1);

    extract($_POST);

    if (!file_exists("../config.php"))
    {
    $host = $_SERVER[HTTP_HOST ];
    $path = pathinfo($_SERVER['PHP_SELF']);
    $file_path = $path['dirname'];

    exit;
    }
    include "../config.php";


    if ($sendto_email == "changeme@example.com")
    {

    exit;
    }

    if (!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,6}$", $senders_email))
    {
    $error = "1";
    $info_error .= $lang_invalidemail . "<br>";
    }
    if (empty ($security_code))
    {
    $error = "1";
    $info_error .= $lang_nocode . "<br>";
    }

    if ($terms != 1) {
    if ($senders_name != '') {
    $error = "1";
    $info_error .= "Please accept the terms and conditions and try again";
    }
    }

    elseif ($security_code != $randomness)
    {
    $error = "1";
    $info_error .= $lang_wrongcode . "<br>";
    }
    if ($showlink != "no")
    {
    $link = "<br><span style=\"font-size: 10px;\">Powered by <a href=\"http://www.bellonline.co.uk/web-services/free/scripts/php-mailer-script/\" title=\"free PHP mailer script\">BELLonline PHP mailer script</a></span>";
    }
    if ($error == "1")
    {
    $info_notice = "<span style=\"color: " . $error_colour . "; font-weight: bold;\">" . $lang_error . "</span><br>";

    if (empty ($submit))
    {
    $info_error = "";
    $info_notice = $lang_notice;
    }

    function Random()
    {
    $chars = "ABCDEFGHJKLMNPQRSTUVWZYZ23456789";
    srand((double)microtime()*1000000);
    $i = 0;
    $pass = '' ;
    while ($i <= 4)
    {
    $num = rand() % 32;
    $tmp = substr($chars, $num, 1);
    $pass = $pass . $tmp;
    $i++;
    }
    return $pass;
    }
    $random_code = Random();
    $mail_message = stripslashes($mail_message);

    print "<form name=\"BELLonline_email\" method=\"post\" style=\"margin: 0;\" action=\"\">


    ";

    echo "<strong><font color=\"FF0000\">".$info_error."</font></strong>";
    ?>
    <!--Elitetradesmen form -->

    <p>To quote for this job please fill in the details below: </p>
    <p><BR>
    <LABEL for="job_number">Job Number: </LABEL>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;&nbsp;&nbsp;
    <label for="your_business_name">Your Business Name: <br />
    <input name="job_number" type="text" id="job_number" value="<?=$job_number;?>" />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <input type="text" id="your_business_name" name="your_business_name" value="<?=$your_business_name;?>" />
    <br />
    </label>
    <BR>
    <label for="your_start_date">Your Start Date: </label>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Yo ur Completion Date:<BR>
    <INPUT type="text" id="your_start_date" name="your_start_date" value="<?=$your_start_date;?>">
    <label for="your_completion_date">
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;
    <input type="text" id="your_completion_date" name="your_completion_date" value="<?=$your_completion_date;?>"/>
    <br /><br />

    <label for="email">Email:</label>
    <br />
    <input type="text" id="senders_email" name="senders_email" value="<?=$senders_email;?>"/>
    <br />
    <label for="additional_information">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp ;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
    </label>
    Your quote with any additional information:
    <br />
    <textarea name="additional_information" cols="35" rows="5" id="details" name="additional_information"><?=$additional_information;?></textarea>
    <br />
    <BR>
    <label>
    <input name="terms" type="checkbox" id="terms" value="1" /> Please check the box to confirm you have read and agree to our <a href="../policies.html">Terms and conditions
    </a></label>
    <a href="../policies.html"><br/>
    </a><br/>


    <!-- end elite tradesmen form -->


    <?
    // DO NOT EDIT THE BELOW
    print "
    Please enter the text in the box. (case sensitive): <input name=\"security_code\" type=\"text\" id=\"security_code\" size=\"5\">
    &nbsp;&nbsp;&nbsp;&nbsp;<b>$random_code</b><input name=\"randomness\" type=\"hidden\" id=\"randomness\" value=\"$random_code\">
    <p><br />
    <input name=\"submit\" type=\"submit\" id=\"submit\" value=\"$lang_submit\" class=\"mailform_button\">
    </form>";
    }
    else
    {



    if ($checkdomain == "yes")
    {
    $sender_domain = substr($senders_email, (strpos($senders_email, '@')) +1);
    $recipient_domain = substr($sendto_email, (strpos($sendto_email, '@')) +1);
    if ($sender_domain == $recipient_domain)
    {
    print "Sorry, you cannot send messages from this domain ($sender_domain)";
    exit;
    }
    }


    $info_notice = $lang_sent;
    /* THE FOLLOWING CODE FORMATS THE EMAIL CONTENT */
    //We create a mail_message field with any POSTED FORM ELEMENT.
    //To access such an element, we use the name of any form input with a
    //$ symbol before it, so for example to get their name, I use senders_name
    $mail_subject = "Email enquiry from Elite Tradesmen website";

    $mail_message = "***<b>ELITE TRADESMEN WEBSITE - QUOTE FOR WORK</b>***<br/><br/>". $mail_message ."Job Number: ". $job_number . "<br/><br/>Business Name: ". $your_business_name . "<br/><br/>Email: ". $senders_email . "<br/><br/>Start Date: ". $your_start_date ."<br/><br/>Completion Date: ". $your_completion_date ."<br/><br/>Quote with additional information: ". $additional_information;

    /* END CODE TO FORMAT MAIL CONTENT */


    //$mail_message = stripslashes($mail_message);
    $senders_email = preg_replace("/[^a-zA-Z0-9s.@-_]/", "-", $senders_email);
    $senders_name = preg_replace("/[^a-zA-Z0-9s]/", " ", $senders_name);
    $headers = "From: $senders_name <$senders_email> \r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html\r\n";
    $headers .= "X-Mailer: Mailscript by Dave Hayward ** Removed URL & email address to prevent harvesting by spam bots** \r\n";
    mail($sendto_email, $mail_subject, $mail_message, $headers);
    // THE FOLLOWING CODE SORTS THE REDIRECT TO THANKS PAGE //
    ?>

    <script type="text/javascript">
    <!--
    window.location = "thankyou5.html";
    //-->
    </script>
    <?
    //END OF REDIRECT CODE

    }

    ?>
     
    Last edited by a moderator: Jun 28, 2009
  2. DevGeek

    DevGeek Private E-2

    Dude i dont know PHP but i may help you :

    $info_error .= "Please accept the terms and conditions and try again";

    Try deleting that (.),or try

    if ($terms != 1) {
    $info_error .= "Please accept the terms and conditions and try again";
    }

    or

    if ($terms = 0)

    maybe that will fix your problem,like i said before i dont know PHP so dont blame me if it doesnt work :)

    And about the second problem, you can make it to support ASCII characters by using this :

    <meta http-equiv="content-type" content="text/html;charset=utf-8" />

    Greetings DevGeek :p
     

MajorGeeks.Com Menu

Downloads All In One Tweaks \ Android \ Anti-Malware \ Anti-Virus \ Appearance \ Backup \ Browsers \ CD\DVD\Blu-Ray \ Covert Ops \ Drive Utilities \ Drivers \ Graphics \ Internet Tools \ Multimedia \ Networking \ Office Tools \ PC Games \ System Tools \ Mac/Apple/Ipad Downloads

Other News: Top Downloads \ News (Tech) \ Off Base (Other Websites News) \ Way Off Base (Offbeat Stories and Pics)

Social: Facebook \ YouTube \ Twitter \ Tumblr \ Pintrest \ RSS Feeds