begin process at 2012 05 28 15:52:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

alimenter une table avec les données d'une autre table


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

alimenter une table avec les données d'une autre table

vendredi 20 mai 2011 à 11:51:15 | alimenter une table avec les données d'une autre table

hitu

bonjour,

J'ai un formulaire de saisie ou je peux inserer dans ma table image des nouvelles données de mes tables auteur, dates, lieux et motscles mais je ne sais pas comment entrer les données déja existantes de ces tables.

Par exemple je voudrais entrer 'toulouse' mais si le lieu existe déja ce n'est pas possible.

Merci
voici mon code:

Code PHP :
<?php


 // On commence par récupérer les champs 
if(isset($_POST['titre']))      $titre=$_POST['titre'];
else      $titre="";

if(isset($_POST['support']))      $support=$_POST['support'];
else      $support="";

if(isset($_POST['photographe']))      $photographe=$_POST['photographe'];
else      $photographe="";

if(isset($_POST['date']))      $date=$_POST['date'];
else      $date="";

if(isset($_POST['provenance']))      $provenance=$_POST['provenance'];
else      $provenance="";

if(isset($_POST['droitimage']))      $droitimage=$_POST['droitimage'];
else      $droitimage="";

if(isset($_POST['description']))      $description=$_POST['description'];
else      $description="";

if(isset($_POST['localisation']))      $localisation=$_POST['localisation'];
else      $localisation="";


if(isset($_POST['nom']))      $nom=$_POST['nom'];
else      $nom="";

if(isset($_POST['periode']))      $periode=$_POST['periode'];
else      $periode="";

if(isset($_POST['lieu']))      $lieu=$_POST['lieu'];
else      $lieu="";

if(isset($_POST['mot']))      $mot=$_POST['mot'];
else      $mot="";
if(isset($_POST['idate']))      $idate=$_POST['idate'];
else      $idate="";

if(isset($_POST['idauteur']))      $idauteur=$_POST['idauteur'];
else      $idauteur="";

if(isset($_POST['idlieu']))      $idlieu=$_POST['idlieu'];
else      $idlieu="";

if(isset($_POST['idmot']))      $idmot=$_POST['idmot'];
else      $idmot="";

if(isset($_POST['idimage']))      $idimage=$_POST['idimage'];
else      $idimage="";
 
 require_once("connect.php");
	$bd=mysql_connect(SERVEUR,NOM,PASSE);
	mysql_select_db(BASE,$bd);
	
	// on regarde dans la table auteur si le nom existe déjà 
	
	
$sql = "SELECT idauteur FROM auteur WHERE nom='$nom'"; 
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
$res= mysql_num_rows($req); 

if($res!=0)  // le nom  existe déjà, on affiche un message d'erreur 
    { 
    echo '<font color="red">Désolé, mais ce nom  existe déjà dans notre base.</font>'; 
    } 

else  // Le nom n'existe pas, on insère d'abord les infos dans auteur
    { 
    $sql = "INSERT INTO auteur (idauteur, nom) VALUES('','$nom')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

    // on récupère l'idauteur qui vient d'être généré 
    $idauteur = mysql_insert_id();
	
    
    
    
  
    }
    
      
    	// on regarde dans la table dates si la periode existe déjà 
	
	
$sql = "SELECT idate FROM dates WHERE periode='$periode'"; 
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
$res= mysql_num_rows($req); 

if($res!=0)  // la periode  existe déjà, on affiche un message d'erreur 
    { 
    echo '<font color="red">Désolé, mais cette periode  existe déjà dans notre base.</font>'; 
    } 

else  // La periode n'existe pas, on insère d'abord les infos dans dates
    { 
    $sql = "INSERT INTO dates (idate, periode) VALUES('','$periode')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
    
    // on récupère l'idate qui vient d'être généré 
    $idate = mysql_insert_id();
    
    
    } 

     // on regarde dans la table lieux si le lieu existe déjà 
    
    $sql = "SELECT idlieu FROM lieux WHERE lieu='$lieu'"; 
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
$res= mysql_num_rows($req); 

if($res!=0)  // le lieu  existe déjà, on affiche un message d'erreur 
    { 
    echo '<font color="red">Désolé, mais ce lieu  existe déjà dans notre base.</font>'; 
    } 

else  // Le lieu n'existe pas, on insère d'abord les infos dans lieux
    { 
    $sql = "INSERT INTO lieux (idlieu, lieu) VALUES('','$lieu')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

    // on récupère l'idlieu qui vient d'être généré 
    $idlieu = mysql_insert_id(); 
	 
	
    } 
     
    
      
	  
	  // on regarde dans la table motcles si le mot existe déjà 
   
      $sql = "SELECT idmot FROM motcles WHERE mot='$mot'"; 
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
$res= mysql_num_rows($req); 

if($res!=0)  // le mot  existe déjà, on affiche un message d'erreur 
    { 
    echo '<font color="red">Désolé, mais ce mot  existe déjà dans notre base.</font>'; 
    } 

else  // Le mot n'existe pas, on insère d'abord les infos dans motcles
    { 
    $sql = "INSERT INTO motcles (idmot, mot) VALUES('','$mot')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

    // on récupère l'idmot qui vient d'être généré 
    $idmot = mysql_insert_id(); 
	 
	
	$sql = "INSERT INTO image (idimage, titre, support, photographe, date, provenance, droitimage, description, localisation, idauteur, idate, idlieu, idmot) VALUES('$idimage','$titre','$support','$photographe','$date','$provenance','$droitimage','$description','$localisation','$idauteur','$idate','$idlieu','$idmot')"; 
	mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
    } 

    

mysql_close($bd);  // on ferme la connexion   
	
?>

<div id="formulaire">

 <form action="nouveau3.php" method="post">
   

 

    <p>Titre:<br/>
    <input name="titre" size="22" value="" type="text"/>
   </p>   
   
   <p>Support:<br/>
    <input name="support" size="22" value="" type="text"/>
   </p>  
   
   <p>Photographe:<br/>
    <input name="photographe" size="22" value="" type="text"/>
   </p>   
   
   <p>Date:<br/>
    <input name="date" size="22" value="" type="text"/>
   </p>
   
    <p>Provenance:<br/>
    <input name="provenance" size="22" value="" type="text"/>
   </p>
   
    <p>Droits:<br/>
    <input name="droitimage" size="22" value="" type="text"/>
   </p>   
    <p>Description:<br/>
   <textarea name="description" rows="10" cols="50" ></textarea>
   </p>  
 
<p>Localisation dans la photothèque:<br/>
   <textarea name="localisation" rows="10" cols="50" ></textarea>
  </p>
      <p>  Nom du photographe:</p>
        <input name="nom" size="22" value="" type="text"/>
   </p> 
          <p>  Periode :</p>
        <input name="periode" size="22" value="" type="text"/>
   </p> 
   
    <p>  Lieu :</p>
        <input name="lieu" size="22" value="" type="text"/>
   </p> 
         <p>  Mot-clé :</p>
        <input name="mot" size="22" value="" type="text"/>
   </p> 
   
     <input name="Valider" value="Valider" type="submit"/>
   <input name="Effacer" value="Effacer" type="reset"/>
 
</form>
</div>




Cette discussion est classée dans : mysql, erreur, sql, existe, déj


Répondre à ce message

Sujets en rapport avec ce message

faire un formulaire de saisie en récuperant des données [ par hitu ] Bonjour, j'ai fais un formulaire de saisie. voici mon problème. J'arrive à inserer des nouvelles données dans ma table image mais dès que je rentre comment sortir de la bdd ? [ par Georges97427 ] Boujour, Debutant, J'essaye d'inscrire dans ma bdd que j'ai ouverte avec wamp-phpadmin. mais lorsque j'ai inscrit une ligne je sors avec le message erreur de syntaxe quand je veux obliger un utilisateur a mettre un @ et un . dans un champ email [ par gb66 ] Bonjour a vous et merci de m'aider voila je veux obliger l'utilisateur a mettre un . et un @ pour un champ formulaire mais quand j'ai rajouter ses lig message d'alerte pour eviter d'enregistrer la meme donner [ par msi079 ] salut . j'ai crée un code php qui marche très bien . mais je voudrai juste qu'elle m'affiche un message d'erreur pour éviter les doublons . par exemp Afficher données MySQL ds textbox [ par caro93150 ] Bonjour,je voudrais afficher dans mon textbox une données qui se trouve dans ma BDD mes sans succès. Pourriez vous me dire où est mon erreur s'il vous Vérifier si un pseudo existe! [ par dieuche ] Voila le probléme: Je veux vérifier si le pseudo que le visiteur à tapez existe déjà dans ma base de donnée ou pas. S'il existe, on affiche quelque ch Erreur inexpliquée avec echo suite lecture donnée serveur sql [ par sebing ] Bonsoir, J'ai une erreur que je ne peux expliquer, en effet je me sert du même script pour un autre site et tout fonctionne bien. Ma page est sert de Astuce du jour #1: Comment configurer une erreur de la base de donné MySql [ par SmallToad ] Quand vous avez de des erreurs de la base de donnée, êtes-vous déjà demander comment configurer le message d'erreur de la base de donnée MySql C'est Erreur Mysql [ par FearBlue ] Slt a tous!!!!jai une erreur mysql :je v vous montrer mon code c en rapport avec LIKEif(isset($HTTP_POST_VARS['recherche'])){$db = mysql_connect('loca Erreur dans un script [ par philagui ] Bonjour,est-ce que quelqu'un pourrait me dire où est l'erreur dans ce script:$sql_query="SELECT Titre FROM Tableaux WHERE LIMIT 0,2";//Début de la que


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 3,697 sec (3)

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