Je sais que ce sujet a été battu dans le sol, mais je suis vraiment perplexe. Je n'arrive pas à comprendre pourquoi je reçois une erreur inattendue.Accolade de fermeture inattendue} erreur
Mon problème est avec un extrait de code que j'ai ajouté à un script de terminal de carte de crédit Paypal. Il capture les données de formulaire dans une base de données MySql afin que nous puissions suivre les informations d'adresse de facturation, etc. Cela fonctionne jusqu'à ce que j'ajoute une instruction IF qui est censée envoyer les données à MySQL seulement si Paypal capture avec succès les informations de carte. Je veux le faire de cette façon, car même si le formulaire ne parvient pas à capturer l'information CC, il sera toujours ajouté à la base de données comme s'il avait réussi.
Voici le code. Encore une fois, cela fonctionne jusqu'à ce que j'ajoute le if($ack="SUCCESS") {
et l'accolade fermante correspondante à la fin. Si je supprime l'accolade, j'obtiens une erreur de fin inattendue.
Quelle est l'erreur? Dans Notepad ++, tout semble correspondre.
if($ack="SUCCESS") {
$con = mysql_connect("localhost", "dbname", "dbpassword");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("contributors", $con);
$sql="INSERT INTO contributor_information (service, fname, lname, email, address, city, country, state, zip)
VALUES
('$_POST[service]','$_POST[fname]','$_POST[lname]','$_POST[email]','$_POST[address]','$_POST[city]','$_POST[country]','$_POST[state]','$_POST[zip]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
mysql_close($con)
}
Il vous manque un point-virgule après mysql_close ($ con) – shelman
Et il devrait être si ($ ack == "SUCCESS"), avec un double égale – shelman
Aussi. S'IL VOUS PLAÎT ne pas mettre $ _POST dans votre requête comme ça. Il est lié à avoir toutes sortes de méchanceté en eux. Utilisez les requêtes paramétrées PDO. – Nanne