Jump to content

Help with form


Recommended Posts

Hi,

Does anyone know what's wrong with this form please? It should write data to a database; however, it doesn't.


[code]<html>
<head>
<title>order website</title>
</head>

<body>
<?php

//$Send = $_GET['Send'];

if ($Send) {

  // process form

  $db = mysql_connect("localhost", "root", ""); if($db == false) echo "Failed to connect!";
  
if(mysql_select_db("aimredaco",$db)== false) echo "Failed to select database!";

  $sql = "INSERT INTO orders (order_ID, name, email, company_name, address, post_code, city, tel, mobile, website, redesign_website, website_to_redesign, no_pages, web_design, flash_graphics, flash_programming, programming, shopping_cart, comments) VALUES (NULL, '$name', '$email', '$company_name', '$address', '$post_code', '$city', '$tel', '$mobile', '$website', '$redesign_website', '$website_to_redesign', '$no_pages', '$web_design', '$flash_graphics', '$flash_programming', '$programming', '$shopping_cart', '$comments')";

  $result = mysql_query($sql);

  echo "Thank you! Information entered.\n";

} else{



  // display form

?>
<form method="post" action="<?php echo $PHP_SELF?>">
<table width="100%" height="0%" border="1" cellpadding="0" cellspacing="0" bordercolor="#999999">
  <tr>
    <td height="833">
    
    <!-- inside table header -->
      <table width="100%" height="0%"  border="0" align="center" cellpadding="3" cellspacing="0" bordercolor="#CCCCCC" bgcolor="#FFFFFF">
        <tr>
          <td height="2%" colspan="2" valign="middle" background="company/images/index_15.gif" bgcolor="#EFEFEF"><strong><font color="#333333">Order
            your website</font></strong></td>
        </tr>
        <tr>
          <td height="5%" colspan="2" valign="middle" bgcolor="#EFEFEF">
            <p>If you are interested in our services then please fill out the form below to request a quote.</p>
            <p><br>
            </p></td>
        </tr>
        <tr>
        
        <!-- text boxes -->
          <td width="47%" height="2%" valign="middle" bgcolor="#EFEFEF">
            <div align="right">
              <div align="right">*Name:</div>
            </div></td>
          <td width="53%" bgcolor="#EFEFEF"><span>
            <input name="name" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr>
          <td width="47%" valign="middle" bgcolor="#EFEFEF"><div align="right">
              <div align="right">*Email:</div>
            </div></td>
          <td width="53%" height="2%" bgcolor="#EFEFEF" class="style112"><span class="formName style45">
            <input name="email" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr bgcolor="#FFFFFF" class="style112">
          <td width="47%" height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style182">
              <div align="right" class="style174">Company:</div>
            </div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="company_name" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr>
          <td width="47%" bgcolor="#EFEFEF" class="style112"><div align="right" class="style183"><span class="style174">Address:</span></div></td>
          <td width="53%" height="2%" bgcolor="#EFEFEF"><span class="formName style45">
            <input name="address" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr class="style112">
          <td height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">Postcode:</span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="post_code" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr>
          <td height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">City:
              </span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="city" class="style174" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr class="style112">
          <td height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">Telephone:</span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="tel" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr class="style112">
          <td height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">Mobile:
              </span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="mobile" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!--------------------->
        <tr class="style112">
          <td height="2%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">Website:</span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input name="website" style="VERTICAL-ALIGN: middle" size="35" />
            </span></td>
        </tr>
        
        <!-- radio buttons>
        <tr class="style112">
          <td height="8%" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">What service would you like us to offer?</span></div></td>
          <td width="53%" bgcolor="#EFEFEF" class="style112 style150"><span class="formName style45">
            <input onClick="" type="radio" checked="checked" value="y" name="redesign_website" /><span class="style174">Redesign website</span> <span class="style180"><br />
            <input onClick="" type="radio" value="n" name="redesign_website" /><span>New website design</span></span></span><span class="formName style180"><br />
            <br />
            
            <!-- text box -->
            </span><span class="style174">If you choose redesign option, what's your website's address?&nbsp;</span><span class="style178">&nbsp;
            </span><span class="formName style45">
            <input name="website_to_redesign" style="VERTICAL-ALIGN: middle" value="http://" size="60" />
            </span></td>
        </tr>
        
        <!-- combobox -->
        <tr>
          <td height="30" bgcolor="#EFEFEF"> <div align="right"><span>Approximately how many pages do you anticipate the site having?</span></div></td>
          <td width="53%" bgcolor="#EFEFEF"><span>
            <select style="VERTICAL-ALIGN: middle" name="no_pages">
              <option value="">Please select an option.</option>
              <option value="1">1 page</option>
              <option value="2to5">2-5 pages</option>
              <option value="5to10">5-10 pages</option>
              <option value="10+">10+</option>
            </select>
            </span></td>
        </tr>
        
        <!-- checkboxes -->
        <tr class="style112">
          <td height="139" bgcolor="#EFEFEF" class="style112"> <div align="right" class="style183"><span class="style174">What services are you interested in? (Check all that apply)</span></div></td>
          <td width="53%" valign="baseline" bgcolor="#EFEFEF" class="style112 style180"><dl>
              <dt><span class="formName ">
                <input type="checkbox" value="y" name="web_design" />
                </span><span class="style179">Web Design</span></dt><dt>
                <span class="style179">
                <input type="checkbox" value="y" name="flash_graphics" />Flash Graphics</span> </dt>
              <dt>
                <input type="checkbox" value="y" name="flash_programming" />Flash Programming<br />
                <input type="checkbox" value="y" name="programming" />Programming<br />
                <input type="checkbox" value="y" name="shopping_cart" />Shopping cart </dt>
            </dl></td>
        </tr>
        
        <!-- comments textbox -->
        <tr>
          <td height="21%" bgcolor="#EFEFEF"> <div align="right"><span>Questions & comments:</span></div></td>
          <td width="53%" bgcolor="#EFEFEF"><span>
            <textarea name="comments" cols="50" rows="10" style="VERTICAL-ALIGN: middle"></textarea>
            </span></td>
        </tr>
        
        <!-- send button -->
        <tr>
          <td height="30" bgcolor="#EFEFEF">&nbsp;</td>
          <td width="53%" bgcolor="#EFEFEF"><span>
            <input name="Send" type="Submit" value="Send" />
            </span></td>
        </tr>
      </table></td>
  </tr>
</table>
</form>
</body>
</html>
<?php
}
?>[/code]
Link to comment
Share on other sites

[!--quoteo(post=374020:date=May 15 2006, 10:07 AM:name=michaellunsford)--][div class=\'quotetop\']QUOTE(michaellunsford @ May 15 2006, 10:07 AM) [snapback]374020[/snapback][/div][div class=\'quotemain\'][!--quotec--]
if your Order_ID is auto-increment, just leave it out of your INSERT query (instead of sending NULL). See if that works and reply.
[/quote]

Thanks for your reply. I took null away; however, it still doesn't write to the table!
that field was auto_increment.
Link to comment
Share on other sites

Don't even send that field.

[code] $sql = "INSERT INTO orders (name, email, company_name, address, post_code, city, tel, mobile, website, redesign_website, website_to_redesign, no_pages, web_design, flash_graphics, flash_programming, programming, shopping_cart, comments) VALUES ('$name', '$email', '$company_name', '$address', '$post_code', '$city', '$tel', '$mobile', '$website', '$redesign_website', '$website_to_redesign', '$no_pages', '$web_design', '$flash_graphics', '$flash_programming', '$programming', '$shopping_cart', '$comments')";
[/code]
Link to comment
Share on other sites

This is commented out //$Send = $_GET['Send'];
then unless you have register_globals ON then this wont work if ($Send) and it is a $_POST variable because of the method in your form so try changing if ($Send) to
[code]if(isset($_POST['Send'])){[/code]and see what it does.
Link to comment
Share on other sites

[!--quoteo(post=375409:date=May 19 2006, 07:54 PM:name=Houdini)--][div class=\'quotetop\']QUOTE(Houdini @ May 19 2006, 07:54 PM) [snapback]375409[/snapback][/div][div class=\'quotemain\'][!--quotec--]
This is commented out //$Send = $_GET['Send'];
then unless you have register_globals ON then this wont work if ($Send) and it is a $_POST variable because of the method in your form so try changing if ($Send) to
[code]if(isset($_POST['Send'])){[/code]and see what it does.
[/quote]

Thank you:)
That's slightly worked. it created a new record in the table, but left all fields empty except from the auto_increment PK.
Link to comment
Share on other sites

[!--quoteo--][div class=\'quotetop\']QUOTE[/div][div class=\'quotemain\'][!--quotec--]That's slightly worked. it created a new record in the table, but left all fields empty except from the auto_increment PK.[/quote]
Probably because all of the data POSTed from the form were not abstracted from the $_POST array. Your script assumes that register_globals is ON (the default in much earlier versions of php and/or found in outdated scripts). You'll need to retrieve each of the POSTed values using a syntax such as:
[code]$name = $_POST['name'];[/code]

That should work for you, although there are faster/better ways of doing it.
Link to comment
Share on other sites

[!--quoteo(post=375894:date=May 21 2006, 06:31 PM:name=AndyB)--][div class=\'quotetop\']QUOTE(AndyB @ May 21 2006, 06:31 PM) [snapback]375894[/snapback][/div][div class=\'quotemain\'][!--quotec--]
Probably because all of the data POSTed from the form were not abstracted from the $_POST array. Your script assumes that register_globals is ON (the default in much earlier versions of php and/or found in outdated scripts). You'll need to retrieve each of the POSTed values using a syntax such as:
[code]$name = $_POST['name'];[/code]

That should work for you, although there are faster/better ways of doing it.
[/quote]

It would help very much if you can show me a faster better way of doing it actually.
Thanks.
Link to comment
Share on other sites

[code]if (isset($_POST['Send'])) {
    // retrieve all POSTed variables
    foreach ($_POST as $key=>$val) {
        $$key = trim(strip_tags($val)); // remove spaces at ends and strip html/php tags from input
    }
    ... the rest of your form processing ...
[/code]
Link to comment
Share on other sites

  • 2 weeks later...
[!--quoteo(post=376035:date=May 22 2006, 09:21 AM:name=AndyB)--][div class=\'quotetop\']QUOTE(AndyB @ May 22 2006, 09:21 AM) [snapback]376035[/snapback][/div][div class=\'quotemain\'][!--quotec--]
[code]if (isset($_POST['Send'])) {
    // retrieve all POSTed variables
    foreach ($_POST as $key=>$val) {
        $$key = trim(strip_tags($val)); // remove spaces at ends and strip html/php tags from input
    }
    ... the rest of your form processing ...
[/code]
[/quote]

Thank you for that it worked well with it.

I wonder why you used two $$ on key?
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.