Problème d'insertion de données (PHP MySQL)

Résolu
begueradj
Messages postés
273
Date d'inscription
dimanche 4 octobre 2009
Statut
Membre
Dernière intervention
24 juin 2014
- 22 mars 2011 à 09:22
Morphinof
Messages postés
255
Date d'inscription
vendredi 20 avril 2007
Statut
Membre
Dernière intervention
9 août 2013
- 22 mars 2011 à 22:52
Azul à tous,

Dans le code qui suit, j'ai un formulaire dans lequel je recupère mes données et que j'insère dans ma table: mon but ne marche pas; pourriez-vous me signaler mon bug SVP ?

voici mon code:
<?php
require_once('Includes/header.inc.php');
?>


Proforma Request


<?php
if(isset($_POST['proformabt'])){
if(!empty($_POST['vesselname'])&&!empty($_POST['gt'])&&!empty($_POST['nt'])&&!empty($_POST['dwt'])&&!empty($_POST['loa'])&&!empty($_POST['beam'])&&!empty($_POST['summerdraft'])&&!empty($_POST['flag'])&&!empty($_POST['owner'])&&!empty($_POST['from'])&&!empty($_POST['to'])&&!empty($_POST['natureofcargo'])&&!empty($_POST['quantityofcargo'])&&!empty($_POST['terms'])&&!empty($_POST['company'])&&!empty($_POST['namepic'])&&!empty($_POST['phone'])){

$vesselname=htmlentities(stripslashes($_POST['vesselname']));
$gt=htmlentities(stripslashes($_POST['gt']));
$nt=htmlentities(stripslashes($_POST['nt']));
$dwt=htmlentities(stripslashes($_POST['dwt']));
$loa=htmlentities(stripslashes($_POST['loa']));
$beam=htmlentities(stripslashes($_POST['beam']));
$summerdraft=htmlentities(stripslashes($_POST['draft']));
$flag=htmlentities(stripslashes($_POST['flag']));
$owner=htmlentities(stripslashes($_POST['owner']));

$from=htmlentities(stripslashes($_POST['from']));
$to=htmlentities(stripslashes($_POST['to']));
$natureofcargo=htmlentities(stripslashes($_POST['natureofcargo']));
$quantityofcargo=htmlentities(stripslashes($_POST['quantityofcargo']));
$terms=htmlentities(stripslashes($_POST['terms']));

$company=htmlentities(stripslashes($_POST['company']));
$namepic=htmlentities(stripslashes($_POST['namepic']));
$phone=htmlentities(stripslashes($_POST['phone']));
$mobile=htmlentities(stripslashes($_POST['mobile']));
$fax=htmlentities(stripslashes($_POST['fax']));

$today=$_POST['ladate'];
$distinguish=$_POST['distinguish'];

include('Cfg/config.inc.php');

$aplink=mysql_connect($SERVER,$USER,$PWD)or die('Impossible to connect to MySQL Server
'.mysql_error());
$mysql_select_db($DB)or die('Impossible to select the requested database
'.mysql_error());

/*$vesselquery="SELECT*FROM vessel";
$cargoquery="SELECT*from cargo";
$customerquery="SELECT*from customer";

$vesselresult=mysql_query($vesselquery)or die('Impossible to perform selection query on Vessels
'.mysql_error());
$cargoresult=mysql_query($cargoquery)or die('Impossible to perform selection query on Cargs
'.mysql_error());
$customerresult=mysql_query($customerresult)or die('Impossible to perform selection query on Customers
'.mysql_error());*/

mysql_query("INSERT INTO vessels (vesselname,gt,nt,dwt,loa,beam,summerdraft,flag,owner,distinguish)VALUES ('$vesselname','$gt','$nt','$dwt','$loa','$beam','$summerdraft','$flag','$owner','$distinguish')")or die('Insertion problem
'.mysql_error());
mysql_query("INSERT INTO cargo (from,to,natureofcargo,quantityofcargo,terms,distinguish)VALUES ('$from','$to','$natureofcargo','$quantityofcargo','$terms','$distinguish')")or die('Insertion problem
'.mysql_error());
mysql_query("INSERT INTO customer (company,namepic,phone,mobile,fax,distinguish)VALUES ('$company','$namepic','$phone','$mobile','$fax','$distinguish')")or die('Insertion problem
'.mysql_error());





}else{
echo'At least one of the fields is empty';
}
}
?>
<?php
$distinguish=0;
?>
<form action="proforma.php"method="post">
Vessel's  Details | |Cargo's Details |

----

Vessel's name:, , </td></td>From:, ,

----

GT:, , </td></td>To:, ,

----

NT:, , </td></td>Nature of Cargo:, ,

----

DWT:, , </td></td>Quantity of Cargo:, ,

----

LOA:, , </td></td>Terms:, ,

----

BEAM:, , , , ,

----

Summer Draft:, , , , ,

----

Flag:, , , , ,

----

Owner:, , , , ,

----

Customer's Details |

----

Company *:, ,

----

Name PIC *:, ,

----

Phone *:, ,

----

Mobile:, ,

----

Fax:, ,

----

 |

----

,
"/>,
"/>,

----

 |

</form>


<?php
require_once('Includes/footer.inc.php');
?>

5 réponses

Morphinof
Messages postés
255
Date d'inscription
vendredi 20 avril 2007
Statut
Membre
Dernière intervention
9 août 2013
4
22 mars 2011 à 16:42
Ta requete dois etre mal formee (mal ecrite).

Ton code peu etre simplifie :

if(!empty($_POST['vesselname'])&&!empty($_POST['gt'])&&!empty($_POST['nt'])&&!empty($_POST['dwt'])&&!empty($_POST['loa'])&&!empty($_POST['beam'])&&!empty($_POST['summerdraft'])&&!empty($_POST['flag'])&&!empty($_POST['owner'])&&!empty($_POST['from'])&&!empty($_POST['to'])&&!empty($_POST['natureofcargo'])&&!empty($_POST['quantityofcargo'])&&!empty($_POST['terms'])&&!empty($_POST['company'])&&!empty($_POST['namepic'])&&!empty($_POST['phone'])) ...

$vesselname=htmlentities(stripslashes($_POST['vesselname']));
$gt=htmlentities(stripslashes($_POST['gt']));
$nt=htmlentities(stripslashes($_POST['nt']));
$dwt=htmlentities(stripslashes($_POST['dwt']));
$loa=htmlentities(stripslashes($_POST['loa']));
$beam=htmlentities(stripslashes($_POST['beam']));
$summerdraft=htmlentities(stripslashes($_POST['draft']));
...

C'est interminable.
Avec le code qui suit tu teste si toutes les variables testees ne sont pas vide et tu declare une variable
qui s'appelera $le nom de ta variable poste.

foreach ($_POST as $var => $value)
{
if (!empty($value))
{
# Tu declare une variable ayant le nom de la variable postee et tu lui donne sa valeur
$$var = htmlentities(stripslashes($value));
}
else
{
# La variable de nom $var est vide
}
}
3
begueradj
Messages postés
273
Date d'inscription
dimanche 4 octobre 2009
Statut
Membre
Dernière intervention
24 juin 2014
9
22 mars 2011 à 20:47
Merci à vos 2, et beaucoup plus à Morphinof pour son astuce.

J'ai réglé le problème:
en effet, la seconde requête d'insertion concerne la table 'cargo' qui renferme 2 champs dont 2 noms sont des mots clés dans SQL, à savoir from et to
J'ai réglé le problème en réécrivant ladite requête de façon à mettre les 2 champs qui posent problème entre ``

Merci à tous ...

P.S. que Dieu nous sauvent de ces musulmans qui nous niquent la vie en Algérie par leur idéologie primitive, de haine et de violence qui est Islam !!!
3
Morphinof
Messages postés
255
Date d'inscription
vendredi 20 avril 2007
Statut
Membre
Dernière intervention
9 août 2013
4
22 mars 2011 à 22:52
Ravi d'avoir pu t'aider bonne continuation a toi :)
1
begueradj
Messages postés
273
Date d'inscription
dimanche 4 octobre 2009
Statut
Membre
Dernière intervention
24 juin 2014
9
22 mars 2011 à 09:27
Lorsque je clique sur le button de soumission de mon formulaire, aucune erreur ne se signale dans mysql_error(); et lorsque je vérifie mes tables, je m'apperçois qu'aucune table n'est remplie de mes données !!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Morphinof
Messages postés
255
Date d'inscription
vendredi 20 avril 2007
Statut
Membre
Dernière intervention
9 août 2013
4
22 mars 2011 à 16:44
Au sujet de ta requete mal formee c'est peu etre parce que tu as colle le mot VALUES rajoute un espace.
Sinon faudrai l'erreur que te renvois mysql
0