This should work! heh… We were sending in an array with keys => values. the DB class is expecting an array with the values only (in the same order as the question marks in the query).
[php]<?php
ini_set(‘error_reporting’, E_ALL);
ini_set(‘display_errors’, ‘1’);
include (‘config.php’);
require_once (‘db.php’);
$db = new db();
//This gets all the other information from the form and adds them to an array
$data = array();
$data[] = !empty($_POST[‘company’])              ? $_POST[‘company’]              : ‘’;
$data[] = !empty($_POST[‘phone’])                ? $_POST[‘phone’]                : ‘’;
$data[] = !empty($_POST[‘website’])              ? $_POST[‘website’]              : ‘’;
$data[] = !empty($_POST[‘messagefr’])            ? $_POST[‘messagefr’]            : ‘’;
$data[] = !empty($_POST[‘messageen’])            ? $_POST[‘messageen’]            : ‘’;
$data[] = !empty($_POST[‘categories’])           ? $_POST[‘categories’]           : ‘’;
$data[] = !empty($_POST[‘profession’])           ? $_POST[‘profession’]           : ‘’;
$data[] = !empty($_POST[‘manufacturiers_stand’]) ? $_POST[‘manufacturiers_stand’] : ‘’;
$data[] = !empty($_POST[‘percent_quebec’])       ? $_POST[‘percent_quebec’]       : ‘’;
$data[] = !empty($_POST[‘percent_canada’])       ? $_POST[‘percent_canada’]       : ‘’;
$data[] = !empty($_POST[‘percent_usa’])          ? $_POST[‘percent_usa’]          : ‘’;
$data[] = !empty($_POST[‘percent_autre’])        ? $_POST[‘percent_autre’]        : ‘’;
$data[] = !empty($_POST[‘bt_export’])            ? $_POST[‘bt_export’]            : ‘’;
$data[] = !empty($_POST[‘bt_exporte_souhaite’])  ? $_POST[‘bt_exporte_souhaite’]  : ‘’;
$data[] = !empty($_POST[‘bt_prod_verts’])        ? $_POST[‘bt_prod_verts’]        : ‘’;
$data[] = !empty($_POST[‘bt_new_prod’])          ? $_POST[‘bt_new_prod’]          : ‘’;
$data[] = !empty($_POST[‘name’])                 ? $_POST[‘name’]                 : ‘’;
$data[] = !empty($_POST[‘email’])                ? $_POST[‘email’]                : ‘’;
$data[] = !empty($_POST[‘resource_phone’])       ? $_POST[‘resource_phone’]       : ‘’;
$data[] = !empty($_POST[‘personne_ressource’])   ? $_POST[‘personne_ressource’]   : ‘’;
$data[] = !empty($_POST[‘backup_name’])          ? $_POST[‘backup_name’]          : ‘’;
$data[] = !empty($_POST[‘backup_email’])         ? $_POST[‘backup_email’]         : ‘’;
$data[] = !empty($_POST[‘backup_phone’])         ? $_POST[‘backup_phone’]         : ‘’;
// run db query and enter the entire data array at once. Note that you could/should
// write a function that automatically generates the ?,?,? string based on the parameters (count($array))
$result = $db->query("INSERT INTO form_corpo_test (compagnie,
telephone,
site_web,
texte_fr,
texte_en,
categories,
profil_exposant,
stands_du_manufacturier,
pourcentage_quebec,
pourcentage_canada,
pourcentage_usa,
pourcentage_autre,
exporte,
exporte_souhaite,
produits_vert,
nouveau_produits,
nom,
courriel,
telephone_ressource,
personne_ressource_c_toi,
autre_personne_ressource,
autre_courriel,
autre_telephone)
                                               VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",
                                               $data);
if (!$result) {
echo ‘aww, something bad happened, it should have been catched by the try/catch inside the DB class…’;
}
// … the rest of your code[/php]
If we were using named placeholders (’:compagnie’) we should’ve sent in both key (named placeholder) and value…