Insert donné php dans table vide Sql

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Insert donné php dans table vide Sql

Insert donné php dans table vide Sql

par Miaouu » 24 juin 2011, 13:56

Voici les modifications mais toujours pas d'echo sql et pas d'insertion quand c'est FG1500.
		<?php 
		

		//-------------------------FG10-----------------------------------------------------------

		
		// DATE-------------INSERTION CODE DE REFERENCE ------ PRODUIT -------------- CLIENT -------- QUANTITE VENDU ----------- ETAT = VENTE 
					if(isset($_POST['valider']))
						{
					$reference=$_POST['reference'];
					$affichage=$_POST['affichage'];
					$client=$_POST['client'];
					$nouveau=$_POST['nouveau'];
					$etat='Vente';
					switch($reference){
					case'FG10':
							connectMaBase();

$sql = 'INSERT INTO fg10 (Date,Reference,Produit,Societe,Quantite,Etat) VALUES ("'.$date.'","'.$reference.'","'.$affichage.'","'.$client.'","'.$nouveau.'","'.$etat.'")';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
break;
	}
							
					
	
		//-------------------------FG1500-----------------------------------------------------------

		
		// DATE-------------INSERTION CODE DE REFERENCE ------ PRODUIT -------------- CLIENT -------- QUANTITE VENDU ----------- ETAT = VENTE 
					
					switch($reference){
					case'FG1500':
		connectMaBase();

$sql = 'INSERT INTO fg1500 (Date,Reference,Produit,Societe,Quantite,Etat) VALUES ("'.$date.'","'.$reference.'","'.$affichage.'","'.$client.'","'.$nouveau.'","'.$etat.'")';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
break;
	}
}						
					
?>				
	

Re: Insert donné php dans table vide Sql

par Ez3kiel » 24 juin 2011, 10:45

		//-------------------------FG1500-----------------------------------------------------------

$sql = 'INSERT INTO fg1500 SET Date="'.mysql_real_escape_string($date).'", Reference="'.mysql_real_escape_string($reference).'", Produit="'.mysql_real_escape_string($affichage).'", Societe="'.mysql_real_escape_string($client).'", Quantite="'.mysql_real_escape_string($nouveau).'", Etat="'.mysql_real_escape_string($etat).'"';
Salut à toi mIaou,
sans prendre tout mon temps pour regarder si toutes tes liges sont bonnes, est ce normal que tu écrives ton insert comme un update ? Personellement je n'ai jamais essayé mais j'ai des doutes sur l'efficacité de ta requête Une requête INSERT s'écris de la manière suivante:
INSERT into Matable(1erchamp, 2emeChamp, 3emeChamp...) Values (1ereValeur,2emeValeur,3emeValeure...);
Essaie déjà comme ca ;)
Tu as fait la modif pour la première requête, mais pas la seconde. :wink:

Insert donné php dans table vide Sql

par Miaouu » 23 juin 2011, 13:16

Bonjour , aucun erreur ne s ' affiche mais seul l' insertion dans la table fg10 est fonctionnel .

Mes listes de référence qui se répètent sur ma page de php : FG10 - FIG1500 - FIG1560 -LAG14 - MG80 - OPWPA6 - UPP63 - UPP90

la valeur $reference est changeant apres validation d'un autre page :

Code : Tout sélectionner

<input name="reference" type="text" value="<?php if(isset($_POST['vendre'])) { $recup1=$_POST['recup1']; echo''.$recup1.''; } ?>">
la valeur $reference s' affiche automatiquement et prend plusieurs valeur aléatoire en conséquence de l'autre page.

Apres test , seul echo''.$sql'' de la table FG10 s' affiche et non dans la table FG1500 qui n 'est pas fonctionnel.

Re: Insert donné php dans table vide Sql

par Mazarini » 22 juin 2011, 15:55

Bonjour,

Est ce qu'il y a une erreur mysql et dans ce cas quelle erreur ?

Insert donné php dans table vide Sql

par Miaouu » 22 juin 2011, 15:49

Voila , j'ai changé comme tu me la dit mais seul le premier switch marche , voici le code :
if(isset($_POST['valider']))
						{
					$reference=$_POST['reference'];
					$affichage=$_POST['affichage'];
					$client=$_POST['client'];
					$nouveau=$_POST['nouveau'];
					$etat='Vente';
					echo''.$reference.'';
					switch($reference){
						case 'FG10':
		connectMaBase();

$sql = 'INSERT INTO fg10 SET Date="'.mysql_real_escape_string($date).'", Reference="'.mysql_real_escape_string($reference).'", Produit="'.mysql_real_escape_string($affichage).'", Societe="'.mysql_real_escape_string($client).'", Quantite="'.mysql_real_escape_string($nouveau).'", Etat="'.mysql_real_escape_string($etat).'"';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
break;
	}
	

		//-------------------------FG1500-----------------------------------------------------------

							switch($reference){
						case 'FG1500':
					
		connectMaBase();

$sql = 'INSERT INTO fg1500 SET Date="'.mysql_real_escape_string($date).'", Reference="'.mysql_real_escape_string($reference).'", Produit="'.mysql_real_escape_string($affichage).'", Societe="'.mysql_real_escape_string($client).'", Quantite="'.mysql_real_escape_string($nouveau).'", Etat="'.mysql_real_escape_string($etat).'"';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
break;
	}
		
		}					
				
?>				

Re: Insert donné php dans table vide Sql

par Dralex76 » 21 juin 2011, 16:41

Ton écriture est un peu lourde, tu écris plusieurs fois le IF isset(valider) Alors qu'une seule fois suffirais , et dans ce if tu effectues un switch avec t différents choix comme FG10. Tu serais moins perdus dans tes variables en faisant ce déja. Réctifie et tiens moi au courant ;)

Insert donné php dans table vide Sql

par Miaouu » 21 juin 2011, 16:20

Bonjour , merci pour ta réponse , j 'ai essayé ce que tu m'as proposé mais je revient à ma meme probleme .
J'ai mis un echo $sql pour voir si ca marche et d'apres mes tests , seul le premier code marche et affiche echo $sql ,Autrement dit , seul la reference FG10 entre dans sa la table produit1 . Le deuxieme code ne marche pas pourtant c'est pareil.

Re: Insert donné php dans table vide Sql

par Dralex76 » 21 juin 2011, 15:48

Salut à toi mIaou,
sans prendre tout mon temps pour regarder si toutes tes liges sont bonnes, est ce normal que tu écrives ton insert comme un update ? Personellement je n'ai jamais essayé mais j'ai des doutes sur l'efficacité de ta requête Une requête INSERT s'écris de la manière suivante:
INSERT into Matable(1erchamp, 2emeChamp, 3emeChamp...) Values (1ereValeur,2emeValeur,3emeValeure...);
Essaie déjà comme ca ;)

Insert donné php dans table vide Sql

par Miaouu » 21 juin 2011, 14:47

Bonjour à vous ,
Voici mes listes de référence qui se répètent sur ma page de php : FG10 - FIG1500 - FIG1560 -LAG14 - MG80 - OPWPA6 - UPP63 - UPP90
J ai créer 8 tables vides pour chaque référence.
Je voudrais insérer des données dans une table vide en fonction de cette référence si c' est possible.

Voici mon premier code php :
// Insertion des données dans table "Produit1" si le post de $reference='FG10'

if(isset($_POST['valider']))
						{
					$reference=$_POST['reference'];
					$affichage=$_POST['affichage'];
					$client=$_POST['client'];
					$nouveau=$_POST['nouveau'];
					$etat='Vente';
					echo''.$reference.'';
					if ($reference=='FG10')
					{
		connectMaBase();

$sql = 'INSERT INTO Produit1 SET Date="'.mysql_real_escape_string($date).'", Reference="'.mysql_real_escape_string($reference).'", Produit="'.mysql_real_escape_string($affichage).'", Societe="'.mysql_real_escape_string($client).'", Quantite="'.mysql_real_escape_string($nouveau).'", Etat="'.mysql_real_escape_string($etat).'"';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
	}
		}					
					
?>			
Voici mon deuxieme code php dans la meme page :
// Insertion des données dans table "Produit2" si le post de $reference='LAG14'

if(isset($_POST['valider']))
						{
					$reference=$_POST['reference'];
					$affichage=$_POST['affichage'];
					$client=$_POST['client'];
					$nouveau=$_POST['nouveau'];
					$etat='Vente';
					echo''.$reference.'';
					if ($reference=='LAG14')
					{
		connectMaBase();

$sql = 'INSERT INTO Produit2 SET Date="'.mysql_real_escape_string($date).'", Reference="'.mysql_real_escape_string($reference).'", Produit="'.mysql_real_escape_string($affichage).'", Societe="'.mysql_real_escape_string($client).'", Quantite="'.mysql_real_escape_string($nouveau).'", Etat="'.mysql_real_escape_string($etat).'"';

mysql_query ($sql) or die('Erreur SQL ! '.$sql.'<br/>'.mysql_error());	
echo''.$sql.'';
mysql_close();
	}
		}					
					
?>			
SQL ne donne aucun erreur , Seul le premier code marche pourtant c' est la meme chose . Pouvez vous me donner un petit coup de main merci