begin process at 2012 05 31 00:21:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

insert into


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

insert into

samedi 21 mai 2011 à 18:00:39 | insert into

casper77610

Bonjour à tous,

J'ai un formulaire d'inscription,

Une tbl1 ou il y a déjà les adhérents et une tbl2 ou les adhérents peuvent s'inscrire à une sortie, mais que si ils sont adhérents, les autres non.

Mon problème est que identification par 3 saisis des adhérents est OK, mais que lorsque je veux les inscrire dans la tbl2, la requete envois toute la tbl1 dans la tbl2 et non juste que l'adhérent qui c'est inscrit.

Formulaire sortie-1.php
Code HTML :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
</head>

<body background="Images/WB02134_.GIF">
<div align="center">           
  <form method="POST" action="sortie-id.php">
    <table>
          <tr><td>Prenom</td><td>
              <input type="text" name="prenom" size="20" value="" maxlength="20"></td>
          </tr>  
          <tr><td>Nom</td><td>
              <input type="text" name="nom" size="20" value="" maxlength="20"></td>
          </tr>  
          <tr><td>Classe</td><td>
              <input type="text" name="classe" size="20" value="" maxlength="20"></td>
          </tr>
    </table>
   
<br />
    <p><input type="submit" value="Envoyer" name="envoyer"></p>                     
 </div>
 <tr><td><center>Attention ! Tous les champs doivent être remplis</td></tr>
  </form>



</body>
</html>


Sortie-id.php
Code PHP :
<?php
$db = mysql_connect('localhost', 'root', '') or die('HOST ?'); 
mysql_select_db('Adherents',$db) or die('DB ?'); 
if(isset($_POST) && !empty($_POST['prenom']) && !empty($_POST['nom']) && !empty($_POST['classe'])) {
  extract($_POST);
  $sql = "select prenom from enfants where prenom='".$prenom."' AND nom='".$nom."' AND classe='".$classe."'";
  $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

  $data = mysql_fetch_assoc($req);

 if($data['prenom'] !=$prenom AND $data['nom'] !=$nom AND $data['classe'] !=$classe) {
    echo '<p>Enfant non inscrit comme adhérent. Merci de recommencer</p>';
    include('sortie-1.php'); 
    //exit;
  }
  else {
$sql =" INSERT INTO sortie1 (

	   `id`,
      `Nom` ,
	  `Prenom` ,
      `Classe`,
	  `Telephone` ,
      `Portable_M` ,
	  `Portable_P`,
	  `Sortie`,
	  `Photos`
      )select
 	  `id`,
	  `Nom` ,
	  `Prenom` ,
      `Classe`,
	  `Telephone` ,
      `Portable_M` ,
	  `Portable_P`,
	  `Sortie`,
	  `Photos` 
from enfants";

       mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
      // on affiche le résultat pour le visiteur 
     unset($_POST);
	 header('location:sortie-1.php');
    echo 'L enfant a bien été inscrit';
	exit;
	mysql_close();
	

  }   
}
else {
  echo '<p>Vous avez oublié de remplir un champ.</p>';
   include('sortie-1.php'); 
  //exit;
}

{
mysql_close();
}
 
 ?> 


Une petite piste pour que cela se fasse et évité les doubles
Évidemment les 2 tables sont identique

En espérant avoir été clair et merci par avance
lundi 23 mai 2011 à 16:49:12 | Re : insert into

Bobshit75

Hum, il me semble que ta requête select est juste mal organisée en fonction de ton besoin.

Code PHP :
$sql = "SELECT * FROM enfants WHERE prenom='".$prenom."' AND nom='".$nom."' AND classe='".$classe."'";


Ensuite tu check si il y a une concordance au niveau des valeurs remplies et celles de la table, or si une des 3 valeurs est fausse, ta requête SELECT se fera pas et donc inutile de faire ton check ensuite vue que $data sera NULL.

Sinon, si j'ai bien compris ton problème, tu désires insérer dans la table "sortie1" les informations de la requête select d'avant c'est bien ça ? Si oui, corrige déjà ta requête d'insert avec ça, je crois que c'est mieux :

Code PHP :
$sql ="INSERT INTO sortie1 (
	      `Nom` ,
		  `Prenom` ,
	      `Classe`,
		  `Telephone` ,
	      `Portable_M` ,
		  `Portable_P`,
		  `Sortie`,
		  `Photos`
	      )VALUES(
	 	  ".$data['nom'].",
		  ".$data['prenom'].",
		  ".$data['classe'].",
	      ".$data['telephone'].",
		  ".$data['portable_m'].",
	      ".$data['portable_p'].",
		  ".$data['sortie'].",
		  ".$data['photos'].")";
lundi 23 mai 2011 à 17:07:07 | Re : insert into

Bobshit75

Bon j'ai pu revoir un peu le code essaye ça :

Code PHP :
<?php
$db = mysql_connect('localhost', 'root', '') or die('HOST ?'); 
mysql_select_db('Adherents',$db) or die('DB ?'); 

if(isset($_POST)){
	if(!empty($_POST['prenom']) && !empty($_POST['nom']) && !empty($_POST['classe'])){
		extract($_POST);
		$sql = "SELECT * FROM enfants WHERE prenom='".$prenom."' AND nom='".$nom."' AND classe='".$classe."'";
		$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
	
		$data = mysql_fetch_assoc($req);
	
		if($data != NULL){
			if($data['prenom'] != $prenom && $data['nom'] != $nom && $data['classe'] != $classe){
				echo '<p>Enfant non inscrit comme adhérent. Merci de recommencer</p>';
				include('sortie-1.php');
			    //exit;
			} else {
				$sql ="INSERT INTO sortie1 (

				      `Nom` ,
					  `Prenom` ,
				      `Classe`,
					  `Telephone` ,
				      `Portable_M` ,
					  `Portable_P`,
					  `Sortie`,
					  `Photos`
				      ) VALUES (
				 	  ".$data['nom'].",
					  ".$data['prenom'].",
					  ".$data['classe'].",
				      ".$data['telephone'].",
					  ".$data['portable_m'].",
				      ".$data['portable_p'].",
					  ".$data['sortie'].",
					  ".$data['photos'].")";

				mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
				// on affiche le résultat pour le visiteur
				unset($_POST);
				header('location:sortie-1.php');
				echo 'L enfant a bien été inscrit';
				exit;
				mysql_close();
			}
		} else {
			echo '<p>Error : Retour Requête SQL => NULL</p>';
			include('sortie-1.php');
		}
	} else {
		echo '<p>Vous avez oublié de remplir un champ.</p>';
		include('sortie-1.php');
		//exit;
	}
}

mysql_close();
?>


En espérant que ça a pu t'aider.
lundi 23 mai 2011 à 18:33:56 | Re : insert into

casper77610

Merci pour l'aide, mais il y a une erreur "undefined index nom prem et classe"

Merci
mardi 24 mai 2011 à 10:27:25 | Re : insert into

Bobshit75

Réponse acceptée !
Euh en effet, essaye ça :

Code PHP :
<?php 
$data[] = mysql_fetch_assoc($req);
var_dump($data); /*C'est pour voir ce que retourne ton tableau. Tu pourras nous link justement ce qu'il te retourne ? Enfin montre nous juste un exemple de nom, prenom, classe, les autres champs on met de côté.*/
?>


Cette discussion est classée dans : php, mysql, classe, prenom, sortie


Répondre à ce message

Sujets en rapport avec ce message

php - intranet - MysqL [ par ben272 ] Bonsoir à tous, j'ai quelques questions à poser. Voilà dans mon collège on va mettre en place un intranet ( section informatique seulement ),et c'est php connection base MySQL [ par A_Z ] Bonjour à tous !Je veux juste savoir comment faire pour me connecté à ma base Mysql comme suit :Voilà le formulaire que j'ai fais :Le nom:Le prenom :a étude... et étude..... [ par polo3592 ] bonjour,je suis passionné PHP/MySQL, & j'en souhaite faire mon métier, mais concrétement, quel étude faire pour devenir développeur php/mysql ?mercipa Script php + mysql top liste titre pour webradio [ par mamure ] Bonsoir tout le monde.Je recherche un script php + mysql pour faire une top liste (20 titres) pour webradio.En fait, le systeme ce serait que l'audite php session_start [ par regis62 ] Bonjour.je suis un débutant en php et j'ai un probléme.Dans la page acces_eleve un éléve se connect (grace à des formulaires).Dans la page requete_ele AJAX PHP send var [ par cedriclomb ] Bonjour,Bon la j'y pige que couik !Alors voila le problème, je cherche a envoyer un fomulaire à PHP avec AJAX et une méthode POST, j'ai fait des reche POPUP avec PHP probleme de ID [ par younes371 ] bonjour, je ve que lorsque je clique sur une image, un popup s 'ouvre.J'ai le script du popup ,mon probleme est le suivant :lorsque je clique sur le l erreur retour d'un array php depuis une classe [ par inovah ] Bonjour à tous,Voilà mon problème. J'ai conçu une classe en php 4 avec une fonction qui devrait me retourner un tableau php de 2 dimensions. Voici le Condition d'une boucle [ par christobal ] Bonjour, L'objectif de ce code est d'affiché la prochaine date de sortie ou s'il n'y a plus de date l'affichage d'un message.Mon pb vient du fait que Affichage php [ par milkasoprano ] Bonsoir tous le monde, j'en ai plus que marre, je confons beaucoup de chose en php en ce qui conerne les lettrine daffichage.. par exemple dans ma tab


Nos sponsors


Sondage...

Comparez les prix

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 : 0,406 sec (4)

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