Database not updating

abasel 28 Jul, 2010
I have read other posts on this but can't come right.

When I post a port, I get the following debug infor
Form passed first SPAM check OK
Form passed the submissions limit (if enabled) OK
Form passed the Image verification (if enabled) OK
Form passed the server side validation (if enabled) OK
$_POST Array: Array ( [Art] => on [Numeracy] => on [FoodTechnology] => on [Submit] => Submit [a7266b71891ecd3f6812eda1e5d07b49] => 1 [1cf1] => 861b24785fd5af488f79a29746e2fde2 [chronoformname] => form_Year8To9_options )
$_FILES Array: Array ( )
Form passed the plugins step (if enabled) OK
Debug End


But when I go and browse the table, it's empty.

What might I have forgotten to do?
GreyHead 29 Jul, 2010
Hi abasel,

Please check the Database tutorial from the Tutorials link above.

Bob
abasel 29 Jul, 2010
Hi, yes the tutorial is great and I seem to have done all of this but alas it still does not work.

Debug Info

Form passed first SPAM check OK
Form passed the submissions limit (if enabled) OK
Form passed the Image verification (if enabled) OK
Form passed the server side validation (if enabled) OK
$_POST Array: Array ( [Japanese] => on [Submit] => Submit [d81802630e3d8c6a6708b6f95907a176] => 1 [1cf1] => 6dabf55ee5359af533fdee746bafc83d [chronoformname] => form_Year8To9_options )
$_FILES Array: Array ( )
Form passed the plugins step (if enabled) OK
Debug End



[attachment=0]FormManager.jpg[/attachment]
GreyHead 29 Jul, 2010
Hi abasel,

Do you have the columns named Japanese, Art, Numeracy, FoodTechnology, . . . in the database table?

Bob
abasel 29 Jul, 2010
Hi, yes as in the screen shot.

Initially I changed the types as I am only storing 1 or 0 but then when it didn't work, I deleted the table and re-created it using the default settings as shown in the image.

Cheers
Andre
[attachment=0]TableColumns.jpg[/attachment]
GreyHead 29 Jul, 2010
Hi abasel,

As you can see from the DeBug info the values being returned are 'on' or *nothing* so you do need text values.

You need to refresh the DB Connection after any changes to database column names. In the Form Editor click the DB Connection tab and set the Connection to 'No'. Click the 'Apply icon in the toolbar to save the form, open the DB Connection tab, set the Connection back to 'Yes' and re-save the form. This will refresh the copy of the table information that ChronoForms uses.

Bob
abasel 29 Jul, 2010
Hi, I know that I should understand all this but I seem to be missing it.....

Attached is the form with some data selected

[attachment=0]Form.jpg[/attachment]

Here is the corresponding debug info
Form passed first SPAM check OK
Form passed the submissions limit (if enabled) OK
Form passed the Image verification (if enabled) OK
Form passed the server side validation (if enabled) OK
$_POST Array: Array ( [Art] => 1 [Japanese] => 1 [Numeracy] => 1 [Submit] => Submit [e57fc248471b9475efc334cccbc1420a] => 1 [1cf1] => 180ed9a532b756ddd2d20573b8bfefb2 [chronoformname] => form_Year8To9_options )
$_FILES Array: Array ( )
Form passed the plugins step (if enabled) OK
Debug End


I did refresh the connection as you suggested first.

The problem must lie in the code for my form:
  <p>Students may <strong>NOT</strong> choose more than <strong>TWO</strong> subjects from any one line.</p>
  <table  border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="150"><fieldset>
          <legend>Line A</legend>
          <p>
            <label for="Art">Art</label>
            <input type="checkbox" name="Art" id="Art" value="1"/>
          </p>
          <p>
            <label for="Drama">Drama</label>
            <input type="checkbox" name="Drama" id="Drama" value="1"/>
          </p>
          <p>
            <label for="Music">Music</label>
            <input type="checkbox" name="Music" id="Music" value="1"/>
          </p>
          <p>
            <label for="ESOL">ESOL</label>
            <input type="checkbox" name="ESOL" id="ESOL" value="1"/>
          </p>
          <p>
            <label for="Numeracy">Numeracy</label>
            <input type="checkbox" name="Numeracy" id="Numeracy" value="1"/>
          </p>
          <p> </p>
        </fieldset></td>
      <td width="15"> </td>
      <td width="150"><fieldset>
          <legend>Line B</legend>
          <p>
            <label for="Moari">Moari</label>
            <input type="checkbox" name="Moari" id="Moari" value="1"/>
          </p>
          <p>
            <label for="French">French</label>
            <input type="checkbox" name="French" id="French" value="1"/>
          </p>
          <p>
            <label for="Japanese">Japanese</label>
            <input type="checkbox" name="Japanese" id="Japanese" value="1"/>
          </p>
          <p>
            <label for="ESOL">ESOL</label>
            <input type="checkbox" name="ESOL" id="ESOL" value="1"/>
          </p>
          <p>
            <label for="Literacy">Literacy</label>
            <input type="checkbox" name="Literacy" id="Literacy" value="1"/>
          </p>
          <p>
            <label for="Numeracy">Numeracy</label>
            <input type="checkbox" name="Numeracy" id="Numeracy" value="1"/>
          </p>
        </fieldset></td>
      <td width="15"> </td>
      <td width="150"><fieldset>
          <legend>Line C</legend>
          <p>
            <label for="Technology">Technology</label>
            <input type="checkbox" name="Technology" id="Technology" value="1"/>
          </p>
          <p>
            <label for="FoodTechnology">Food Technology</label>
            <input type="checkbox" name="FoodTechnology" id="FoodTechnology" value="1"/>
          </p>
          <p>
            <label for="Graphics">Graphics</label>
            <input type="checkbox" name="Graphics" id="Graphics" value="1"/>
          </p>
          <p>
            <label for="ESOL">ESOL</label>
            <input type="checkbox" name="ESOL" id="ESOL" value="1"/>
          </p>
          <p>
            <label for="Numeracy">Numeracy</label>
            <input type="checkbox" name="Numeracy" id="Numeracy" value="1"/>
          </p>
          <p> </p>
        </fieldset></td>
    </tr>
  </table>
  <p><strong>Notes:</strong></p>
  <ol>
    <li>ESOL students must choose ESOL from one line.</li>
    <li>Students currtently doing Literacy should choose it.</li>
    <li>The choices you make in Year 9 do <strong>NOT</strong> preculde you from doing a different subject in Year 10.</li>
    <li>The college reserves the right to withdraw any of the subjects offered above if insufficent numbers do not warrant offering the subject.</li>
  </ol>
  <p>
    <input type="submit" name="Submit" id="Submit" value="Submit" />
  </p>


Cheers
GreyHead 29 Jul, 2010
Hi abasel,

By all means email or PM me the site URL and a SuperAdmin login and I'll take a quick look.

Bob
abasel 29 Jul, 2010

It's working now. The DB Connection was set to 'Before Email' and that doesn't execute unless 'Send Emails' is set to Yes on the General tab. (Historic quirk)



Thanks..... I forgot that I had changed that.
This topic is locked and no more replies can be posted.