PHP MySQL : Problème incrémentation BDD

Résolu
Bonjour,
Je suis entrain de générer un formulaire d'enregistrement de contacts dans ma BDD.
J'ai une page html ajoutcontact.html qui fait appel à une page php ajoutcontact.php.
Cette page php fait elle même appel une page fonction.php qui est censée automatiser l'ajout des champs dans la BDD.
Voici ma page :

<?php
function dbconnect()
{
$host = "localhost";
$user = "root";
$password = "";
$bd = "ANCMRTM";

$connection = mysql_connect("$host","$user","$password") or die ("Connection au serveur impossible !");

$base = mysql_select_db("$bd",$connection);

return $connect;
}

function ajout_contact($ajoutcont)
{
mysql_query("INSERT INTO ANCMRTM_Contact SET (TypeDemande='".$ajoutcont['']."',
Nom='".$_POST['nomcontact']."',
Prenom='".$ajoutcont['prenomcontact']."',
Societe='".$ajoutcont['societe']."',
Adresse='".$ajoutcont['adrsociete']."',
Fonction='".$ajoutcont['fonctioncontact']."',
CP='".$ajoutcont['cpsociete']."',
Ville='".$ajoutcont['villesociete']."',
Mail='".$ajoutcont['mailcontact']."',
Tel='".$ajoutcont['telcontact']."',
Fax='".$ajoutcont['faxsociete']."',
ChoixEnvoi='".$ajoutcont['choixenvoi']."');", dbconnect());
}
?>

Lors de l'exécution, cela me marque : Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\wamp\www\ANCMRTM\connection.php on line 33

Pourtant, cela semble fonctionner, parce que si je fais un echo ',$ajoutcont['nomcontact']; cela m'affiche bien ce que j'ai saisi...

J'ai aussi essayé une autre requête, mais ça ne fonctionne pas mieux... :
mysql_query("INSERT INTO ANCMRTM_Contact(Id,TypeDemande,Nom,Prenom,Societe,Adresse,Fonction,CP,Ville,Mail,Tel,Fax,ChoixEnvoi)
VALUES (NULL,'','".$nomcontact."','".$prenomcontact."','".$societe."','".$adrsociete."','".$fonctioncontact."','".$cpsociete."','".$villesociete."','".$mailcontact."','".$telcontact."','".$faxsociete."','".$choixenvoi."');",dbconnect());

Aidez-moi s'il vous plait, je ne sais vraiment pas ce qui cloche !

Mille merci à vous, mes futurs sauveurs !

8 réponses

  1. Non, ça ne semble pas mieux fonctionner :(
    Si vous voulez plus d'infos sur mon code, demandez-moi
    1. Je ne dis pas que tout le code ci-dessous fonctionne car ça dépend également du tien, mais la structure devrait être bonne. S'il y a un problème, ce serait plutôt au niveau de tes noms de variables et de leur valeurs.

      function dbconnect()
      {
      	$host = "localhost";
      	$user = "root";
      	$password = "";
      	$bd = "ANCMRTM";
      	
      	mysql_connect($host, $user, $password) or die("Connection au serveur impossible !");
      	mysql_select_db($bd);
      }


      function ajout_contact($ajoutcont)
      {
      	mysql_query("INSERT INTO ANCMRTM_Contact SET
      		(Id = '',
      		TypeDemande = '',
      		Nom = '".$_POST['nomcontact']."',
      		Prenom = '".$ajoutcont['prenomcontact']."',
      		Societe = '".$ajoutcont['societe']."',
      		Adresse = '".$ajoutcont['adrsociete']."',
      		Fonction = '".$ajoutcont['fonctioncontact']."',
      		CP = '".$ajoutcont['cpsociete']."',
      		Ville = '".$ajoutcont['villesociete']."',
      		Mail = '".$ajoutcont['mailcontact']."',
      		Tel = '".$ajoutcont['telcontact']."',
      		Fax = '".$ajoutcont['faxsociete']."',
      		ChoixEnvoi = '".$ajoutcont['choixenvoi']."')
      	");
      } 
      1. Ok, mais dans ma page aoutcontact.php, in y a un inclide sur connection.php (page des fonctions).
        Je fais appel en 1er à la fonction ajout_contact qui elle devrait appeler la fonction dbconnect.
        Sans ça, pas de connection à la base...
        Je désèpère, ça va faire 4H que je suis dessus :(
    2. Tu fais l'inverse. Tu appelles d'abord dbconnect, puis ajout_contact.
      1. Non, parce que ça ne va pas avec l'utilisation que je veux en faire : dbconnect() doit me resservir pour d'autres types d'enregistrements, donc il ne vaut mieux pas l'appeler en 1er, car cela serait compliqué à gerer (pour savoir à quelle autre fonction d'enregistrement se référer...).
    3. Les mecs... je voulais vous dire que C'EST BON ! J'AI REUSSI ! :D

      J'ai complètment changé le mysqlquery. Voici mon code :

      function ajout_contact($ajoutcont)
      {
      dbconnect();

      mysql_query("INSERT INTO ANCMRTM_Contact(Id,TypeDemande,Nom,Prenom,Societe,Adresse,Fonction,CP,Ville,Mail,Tel,Fax,ChoixEnvoi)
      VALUES (NULL,'','".$ajoutcont['nomcontact']."','".$ajoutcont["prenomcontact"]."','".$ajoutcont["societe"]."','".$ajoutcont["adrsociete"]."','".$ajoutcont["fonctioncontact"]."','".$ajoutcont["cpsociete"]."','".$ajoutcont["villesociete"]."','".$ajoutcont["mailcontact"]."','".$ajoutcont["telcontact"]."','".$ajoutcont["faxsociete"]."','".$ajoutcont["choixenvoi"]."');");
      }

      Voila, en tout cas merci à vous d'avoir essyé de m'aider ^^
      1. Je ne comprends pas. dbconnect ne prend aucun paramètre, donc la fonction est toujours la même, donc je ne vois pas en quoi ça gênera d'autres enregistrements...
        1. Parce que je veux appeler la fonction bien précise de l'enregistrement que je veux, et cette fonction déclenchera la connection à la BDD.
          Je trouve ça plus simple dans ce sens plutot que d'appeler la connection et ensuite trouver quel type d'enregistrement l'on souhaite.
          Voila
          1. pouver vous m'aider à maitre au point un site web, donc je besoin de connaîssance sur php mysql, de conseille ou de note bien détailler mes sera la bien venue.