begin process at 2010 03 22 12:33:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

Pb d'insertion dans une base


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb d'insertion dans une base

mardi 27 septembre 2005 à 15:34:14 | Pb d'insertion dans une base

IvanTheBlackDog

Salut à tous,
je débute en PHP et j'ai réussi à créer une page qui insère des données dans une base Mysql à partir d’un formulaire.

Donc la page fonctionne normalement sous EasyPHP, mais mon problème c’est que j’ai réussi à rentrer 9 enregistrement puis plus rien.

Je ne sais pas de quoi cela pourrais venir est-ce que cela pourrais venir du script ou de la base en sachant que je n’ais rien changé ni au script ni à la base de données.

Juste avant le script, ce mini projet me sert pour sauvegarder des societes que je contact. La base possede deux tables societe et contact avec des clefs primaires et une clef etrangere.

Voici le script PHHP:
<?php
header('Location: ../html/insert.htm');
?>

<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
       <title>Insertion des données</title>
</head>
<body>

<?php
//fichier contenant les elements de connection a la base de données.
require ("connect.php");

//recuperation des données concernant la societe.
$nom_societe = $_POST['nom_societe'];
$acronyme_societe = $_POST['acronyme_societe'];
$adresse_societe = $_POST['adresse_societe'];
$cp_societe = $_POST['cp_societe'];
$ville_societe = $_POST['ville_societe'];
$pays_societe = $_POST['pays_societe'];
$tel_societe = $_POST['tel_societe'];
$fax_societe = $_POST['fax_societe'];
$web_societe = $_POST['web_societe'];
$activite_societe = $_POST['activite_societe'];
$description_societe = $_POST['description_societe'];

//recuperation des données concernant les contact.
$nom_contact = $_POST['nom_contact'];
$prenom_contact = $_POST['prenom_contact'];
$service_contact = $_POST['service_contact'];
$poste_contact = $_POST['poste_contact'];
$mail_contact = $_POST['mail_contact'];

$connexion = mysql_connect (server, login, passwd);

//selection de la base de données
mysql_select_db (base, $connexion);

//insertion des données dans la table societe.
$insert_societe = "insert into societe ("
 . "nom_societe, acronyme_societe, adresse_societe, "
 . "cp_societe, ville_societe, pays_societe, tel_societe, fax_societe, "
 . "web_societe, activite_societe, description_societe, date_saisie) "
 . "values ('$nom_societe', '$acronyme_societe', '$adresse_societe', "
 . "$cp_societe, '$ville_societe', '$pays_societe', $tel_societe, $fax_societe, "
 . "'$web_societe', '$activite_societe', '$description_societe', CURDATE())";

$result_insert_soc = mysql_query ($insert_societe, $connexion);

echo "la requete d'insertion '$insert_societe' a correctement ete execute.<br>";

//selection de l'id societe pour l'insertion dans la table contact.
$select_idsociete = "select *"
 . "from societe "
 . "where nom_societe = '$nom_societe' "
 . "and acronyme_societe = '$acronyme_societe' ";

$result_select_idsoc = mysql_query ($select_idsociete, $connexion);

if($result_select_idsoc)
{
 while ($result = mysql_fetch_object($result_select_idsoc))
 {
  echo "la requete de selection a correctement ete execute. resultat : '$result->id_societe' .<br>";
  //insertion des données dans la table contact.
  $insert_contact = "insert into contact ("
  . "id_societe, nom_contact, prenom_contact, "
  . "service_contact, poste_contact, mail_contact) "
  . "values ($result->id_societe, '$nom_contact', '$prenom_contact', "
  . "'$service_contact', '$poste_contact', '$mail_contact')";
  $result_insert_contact = mysql_query($insert_contact,$connexion);
  echo "votre requete d'insertion '$insert_contact' a correctement ete execute.<br>";
  
 }
}
else
{
 echo"erreur dans l'execution de la requete.<br>";
 echo"message de mysql : <br>" . mysql_error($connexion);
}

?>
</body>
</html>



________________________
Le Black Dog c'est moi

mardi 27 septembre 2005 à 15:59:47 | Re : Pb d'insertion dans une base

Anthomicro

Salut,

quel est le type de champ de ta clé primaire ?

si c'est un TINYINT avec une taille de 1 c'est normal que tu ne puisses dépasser 9 :-)

a +


    mardi 27 septembre 2005 à 16:10:13 | Re : Pb d'insertion dans une base

    IvanTheBlackDog

    Non c'est du int(100) c'est pour cela que je ne vois pas

    ___________________
    Le Black Dog c'est moi
    mardi 27 septembre 2005 à 16:13:01 | Re : Pb d'insertion dans une base

    Anthomicro

    quelle est la structure de ta table ? (tu peux la copier/coller ici stp)

    Ensuite ça n'insère pas car y'a des apostrophes dans l'enregistrement ? là je vois des $_POST sans isset pour vérifier si ils existent, et sans fonction qui ajoute les slashes genre adsslashes pour éviter les failles de sql injection :-)


      mardi 27 septembre 2005 à 17:24:38 | Re : Pb d'insertion dans une base

      IvanTheBlackDog

      en se qui concerne la structure de la table j'ai fais un screenshot du dico des données de easyphp.
      [ Lien ]

      sinon en ce qui concerne les champs vides lors de mes test il n'y avait pas de probleme meme si le champ est vide il m'insere une valeur null ('') donc je ne suis pas trop sur que cela vienne de ça mais c'est vrai qu'il est preferable de faire du bon code propre et je te remerci de ton aide.
      ______________________
      Le Black Dog c'est moi
      mercredi 28 septembre 2005 à 18:16:47 | Re : Pb d'insertion dans une base

      IvanTheBlackDog

      Salut à tous,
      J'ai un petit peu avancé dans mon problème, je me suis aperçus que le problème venais de l'adresse il ne me recupere plus l'adresse si je met un numero d'immeuble par contre si je test avec un mot simple comme 'test' cela fonctionne impec je ne vois franchement pas comment corriger se bug. Si vous voyez une solution je suis preneur meme si elle semble invraissemblable car le bug est arrivée tout seul après 9 enregistrement sans changement du code ou des tables.

      Merci d'avance.
      _______________________
      Le Black Dog c'est moi
      jeudi 6 juillet 2006 à 14:59:58 | Re : Pb d'insertion dans une base

      IvanTheBlackDog

      Réponse acceptée !
      Il faut que je verifie la structure de ce que je recupere. C'est de la que vient mon probleme.
      Il faut que fasse des htmlentities, str_replace etc...
      ______________________
      Le Black Dog c'est moi
      mardi 29 avril 2008 à 05:42:26 | Re : Pb d'insertion dans une base

      lcomb

      MOI JE TE CONSEILLE CA

      $options_demandes=@$_POST['options_demandes'];
        $options_demandes=mysql_real_escape_string(htmlspecialchars($options_demandes));

      lcomb


      Cette discussion est classée dans : base, insert, post, contact, societe


      Répondre à ce message

      Sujets en rapport avec ce message

      Pb d'INSERT , aucune erreur retournée ... [ par Blasfem ] Salut à tous, J'ai un souci, je suis en trin de me former sur le PHP et ma page d'ajout ne fonctionne pas. Pourtant le code semble correct . ? inclu insert into [ par ptifennec ] Bonjour, j' affiche 3 liste_box où je demande à l'utilisateur de rentrer 3 mots clés... ces derniers sont réferencés dans une base de données d'une ta probleme sql guillemet formulaire [ par yoh76 ] Bonjour je suis un neophite du php j'ai un probleme je voudari enlever tout guillemet ou apostrophe lors de la saisie dans la base de donnée voir apre une question sur la getion des insert de MYSQL [ par destiny ] lo all :)Voila, en gros jdoit refaire tout un module de resa par internet (sans SSL) de mon prédécesseur!!Jviens de voir dans sa page validation info  Problème de casse et accent dans une recherche sur une base ORACLE [ par chocholman ] Bonjour, J'ai un pb dans mon moteur de recherche Php pour une base ORACLE de casse et d'accent. Par exemple, lorsque je tape "évènement" le moteur me reprise d'informations par requete en php [ par ARSCEN ] Bonjour à vous tous.   Je m’occupe d’un site ayant une partie ACCES ADHERENTS via un mot de passe. Pour l’instant , tout va bien. A l’intérieur de cet mySQL INSERT et retour des valeurs ... [ par guiguimac ] bonjour !quand je fais une requête SQL avec INSERT dans ma base mySQL, je met '' pour le champ identifiant afin que la base fasse elle même l'autoincr probleme avec INSERT TO dans une boucle [ par attonnnn ] salut bon voila mon pb : afin de saisir des match j utilise la boucle suivante avec un method=postfor($i=1;$i$num1=$i."1"; $num2=$i."2"; ?> <th scop probleme de base de donnée [ par cacoucatatonique ] je désire generer automatiquement une base de donnée en fonction d'un formulaire; mon script est le suivant:   & Variable de Session, Acces base de donnée [ par TuxOnline ] Bonjour à tous. Voila j'ai un petit souci pour ouvrir une connexion avec ma base de donnée.J'utilise donc une page d'authentification et je déclare en


      Nos sponsors


      Sondage...

      Comparez les prix

      CalendriCode

      Mars 2010
      LMMJVSD
      1234567
      891011121314
      15161718192021
      22232425262728
      293031    

      Consulter la suite du CalendriCode

       
      Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
      CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
      CodeS-SourceS.com© est une marque déposée tous droits réservés

      Google Coop CodeS-SourceS Google Coop CodeS-SourceS
      Temps d'éxécution de la page : 4,945 sec (3)

      Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales