HEX
Server: Apache
System: Linux webd004.cluster130.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User: frenchy (106757)
PHP: 7.4.33
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/f/r/e/frenchy/refonte2023/wordpress/evenements/paiement_inscription.php
<?php

require_once("_mysql.php");

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'admin/PHPMailer/src/Exception.php';
require 'admin/PHPMailer/src/PHPMailer.php';
require 'admin/PHPMailer/src/SMTP.php';

setlocale (LC_TIME, 'fr_FR.utf8','fra'); 
if (isset($_POST['email']) && $_POST['email'] != "")
{
  die("Robot");
}
if (isset($_POST['envoiForm']))
{

  $type_paiement = 'NON PAYE PAYPAL';

  if ($_POST['type_paiement'] == 'CHEQUE')
  {
    $type_paiement = 'CHEQUE';
    $type_carte="";
  }
  else
  {
    $type_carte = $_POST['type_carte'];
  }
  $montant = $_POST['montant'];
  $id_inscription = $_POST['inscription'];
  $date_naissance = '';
  if (isset($_POST['date_naissance_'.$id_inscription]))
  {
    $date_naissance = $_POST['date_naissance_'.$id_inscription];
  }
  
  if($_POST['type_cotisation'] == "individuelle")
  {
    $civilite_contact = $_POST['civilite_contact'];
    $prenom_contact = $_POST['prenom_contact'];
    $nom_contact = $_POST['nom_contact'];
    $fonction_contact = $_POST['fonction_contact'];
    $entreprise_contact = $_POST['entreprise_contact'];
    $telephone_contact = $_POST['telephone_contact'];
    $portable_assistant = $_POST['portable_assistant'];
    $email_contact = $_POST['email_contact'];
    $adresse_contact = $_POST['adresse_contact'];
    $code_postal_contact = $_POST['code_postal_contact'];
    $ville_contact = $_POST['ville_contact'];
  }
  if($_POST['type_cotisation'] == "entreprise")
  {
    $civilite_contact = $_POST['civilite_contact_e'];
    $prenom_contact = $_POST['prenom_contact_e'];
    $nom_contact = $_POST['nom_contact_e'];
    $fonction_contact = $_POST['fonction_contact_e'];
    $entreprise_contact = $_POST['entreprise_contact_e'];
    $telephone_contact = $_POST['telephone_contact_e'];
    $portable_assistant= $_POST['portable_assistant_e'];
    $portable_contact = $_POST['portable_contact_e'];
    $email_contact = $_POST['email_contact_e'];
    $email_assistant = $_POST['email_assistant_e'];
    $adresse_contact = $_POST['adresse_contact_e'];
    $code_postal_contact = $_POST['code_postal_contact_e'];
    $ville_contact = $_POST['ville_contact_e'];
  }
  
  mysqli_query($link_bdd, "INSERT INTO `inscrits` ( `civilite_contact`, `prenom_contact`, `nom_contact`, `fonction_contact`, `entreprise_contact`, `telephone_contact`, `portable_contact`, `email_contact`, `adresse_entreprise_contact`, `code_postal_entreprise_contact`, `ville_entreprise_contact`, `id_inscription`, `montant_paiement`, `top_paiement`, `date_naissance`, `type_carte`, `email_assistant`, `portable_assistant`) VALUES
                                      ( '".mysqli_real_escape_string($link_bdd, $civilite_contact)."', '".mysqli_real_escape_string($link_bdd, $prenom_contact)."','".mysqli_real_escape_string($link_bdd, $nom_contact)."','".mysqli_real_escape_string($link_bdd, $fonction_contact)."','".mysqli_real_escape_string($link_bdd, $entreprise_contact)."','".mysqli_real_escape_string($link_bdd, $telephone_contact)."','".mysqli_real_escape_string($link_bdd, $portable_contact)."','".mysqli_real_escape_string($link_bdd, $email_contact)."','".mysqli_real_escape_string($link_bdd, $adresse_contact)."','".mysqli_real_escape_string($link_bdd, $code_postal_contact)."','".mysqli_real_escape_string($link_bdd, $ville_contact)."','".mysqli_real_escape_string($link_bdd, $id_inscription)."','".mysqli_real_escape_string($link_bdd, $montant)."','".$type_paiement."','".mysqli_real_escape_string($link_bdd, $date_naissance)."','".mysqli_real_escape_string($link_bdd, $type_carte)."','".mysqli_real_escape_string($link_bdd, $email_assistant)."','".mysqli_real_escape_string($link_bdd, $portable_assistant)."')");


  $id_contact = mysqli_insert_id($link_bdd);

  // Gestion email Cheque

  if ($type_paiement =='CHEQUE')
  {
    // On envoi un mail
    $subject = utf8_decode("Votre adhésion et votre facture - French-American Foundation - France");
    $fd = fopen("mailadhesioncheque.htm", "r");
    $message = fread($fd, filesize('mailadhesioncheque.htm'));
    fclose($fd);
    if ($montant !=0)
    {
      $message = str_replace("%CIVILITENOMPRENOM%", stripcslashes($civilite_contact . " " . $prenom_contact . " " . $nom_contact), $message);
      // Envoi de la copie du pdf
      $reqContact = mysqli_query($link_bdd, "select * from inscrits where id_contact=".$id_contact);
      $lineContact = mysqli_fetch_array($reqContact);

      $reqDesignation = mysqli_query($link_bdd,"select libelle_inscription_pdf from inscriptions where id_inscription=".$id_inscription);
      $lineDesignation = mysqli_fetch_array($reqDesignation);

      $designation = str_replace("&euro;", "euros", $lineDesignation["libelle_inscription_pdf"]);

      $type_paiement = 'CHEQUE';
      require_once("admin/pdf/genepdfadhesion.php");
      // PHP Mailer
      $mail = new PHPmailer();
      $mail->IsSMTP();                                  // send via SMTP
      $mail->Mailer = "smtp";                           // Mode d'acces
      $mail->Host = "smtp.office365.com";       // SMTP servers
      $mail->SMTPDebug  = 2;   
      $mail->SMTPAuth = true;                           // turn on SMTP authentification
      $mail->Username = "sendmail@french-american.org";   // SMTP username
      $mail->Password = "SE4848+1";                      // SMTP password
      $mail->SMTPSecure = 'tls';
      $mail->Port = 587;
      $mail->IsHTML(true);
      $mail->Sender = "contact@french-american.org";
      $mail->From="contact@french-american.org";
      $mail->FromName="French-american.org";
      $mail->AddReplyTo("contact@french-american.org");
      $mail->AddAttachment("admin/pdf/factures/".$nompdf);
      $mail->Subject=$subject;
      $mail->Body=utf8_decode($message);
      $mail->ClearAddresses();
      $mail->AddAddress($email_contact);
      //$mail->AddAddress('francky1006@netcourrier.com');
      $mail->Send();
      if ($montant !=0)
      {
        // PHP Mailer
        $mail2 = new PHPmailer();
        $mail2->IsSMTP();                                  // send via SMTP
        $mail2->Mailer = "smtp";                           // Mode d'acces
        $mail2->Host = "smtp.office365.com";       // SMTP servers
        $mail2->SMTPAuth = true;                           // turn on SMTP authentification
        $mail2->Username = "sendmail@french-american.org";   // SMTP username
        $mail2->Password = "SE4848+1";                      // SMTP password
        $mail2->SMTPSecure = 'tls';
        $mail2->Port = 587;
        $mail2->IsHTML(true);
        $mail2->Sender = "contact@french-american.org";
        $mail2->From="contact@french-american.org";
        $mail2->FromName="French-american.org";
        $mail2->AddReplyTo("contact@french-american.org");
        $mail2->AddAttachment("admin/pdf/factures/".$nompdf);
        $mail2->Subject='Commande par Cheque Formulaire French American Foundation - France';
        $mail2->Body=utf8_decode($message);
        $mail2->ClearAddresses();
        $mail2->AddAddress('rozenn.jouannigot@french-american.org');
        $mail2->AddAddress('rim.hammami@french-american.org');
        $mail2->AddAddress('francky1006@netcourrier.com');
        $mail2->Send();
        @unlink("admin/pdf/factures/".$nompdf);
      }
      header('location:http://www.french-american.org/evenements/merciadhesion.php');
    }
  }
}


?>

<!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 content="text/html;charset=UTF-8" http-equiv="content-type"/>

<title>French American - Merci de votre Adhésion</title>

<style type="text/css">

/* General styles */

body { margin: 0; padding: 0; font: 11px Calibri,Arial,Helvetica,sans-serif; color: #111; background-color: #FFF; }

a:hover{

    color:#0172b6;

} 

a{

    color:#0172b6;

} 

a:visited{

    color:#0172b6;

} 

h2 { margin: 0px; padding: 10px; font-family: Georgia, "Times New Roman", Times, serif; font-size: 200%; font-weight: normal; color: #FFF; background-color: #CCC; border-bottom: #BBB 2px solid; }



/* Form styles */

div.form-container {margin: auto; padding: 5px;}



p.legend { margin-bottom: 1em; }

p.legend em { color: #C00; font-style: normal; }



div.form-container form p { margin: 0; }

div.form-container form p.note { margin-left: 170px; font-size: 90%; color: #333; }

div.form-container form fieldset { margin: 10px 0; padding: 10px; border: #DDD 1px solid; }

div.form-container form legend { font-weight: bold; color: #666; }

div.form-container form fieldset div { padding: 0.25em 0; }

div.form-container label, 

div.form-container span.label { margin-right: 10px; padding-right: 10px; width: 150px; display: block; float: left; text-align: right; position: relative; }

div.form-container label em, 

div.form-container span.label em { position: absolute; right: 0; font-size: 120%; font-style: normal; color: #C00; }

div.form-container input:focus,

div.form-container textarea:focus {	background-color: #FFC; border-color: #FC6; }

div.form-container div.controlset label, 

div.form-container div.controlset input { display: inline; float: none; }

div.form-container div.controlset div { margin-left: 170px; }

div.form-container div.buttonrow { margin: auto; text-align:center;}

#divAdhesion { margin: auto; text-align:center; border-width:2px; border-style:solid; border-color:#000000;}

#messageNonMembre { text-align:center; font-size: 12px; font-weight: bold;color:#FF0000;}

#checkboxMembre { font-size: 14px; font-weight: bold;}

</style>

</head>

<body>

<div id="header" style="border: 1px solid #8a959b; width: 752px; margin: auto;">

<table width="100%" cellspacing="0" cellpaddin="0">

<tr>

<td width="50%">

  <img src="/evenements/images/logo_faf.jpg" alt="logo FAF" style="float: left; margin: 30px;" width="300">

</td>

<td width="50%">

  <p style="font-size: 24px;font-weight:bold; color:#0172b6; text-align:right; margin: 30px;">Adhésion individuelle <?=date("Y")?></p>

</td>

</tr>



<tr>

<td colspan="2" style="background-color:#0172b6; width: 100%;">

      <div style="text-align: center; color:#ffffff; font-size: 20px;"><b>Devenir membre de la French-American Foundation – France</b></div>
      <div style="text-align: center; color:#ffffff; font-size: 18px;"><b></b></div>

</td>

</tr>

<tr>

<td colspan="2">

<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<div id="bouton-paypal" style="width: 250px;margin: 0 auto;padding-top: 30px;padding-bottom: 30px;"></div>
<script>
  paypal.Button.render({
    env: 'production', // Ou 'production',
    commit: true, // Affiche le bouton  "Payer maintenant"
    style: {
      color: 'gold', // ou 'blue', 'silver', 'black'
      size: 'responsive' // ou 'small', 'medium', 'large'
      // Autres options de style disponibles ici : https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/customize-button/
    },
    payment: function() {
      // On crée une variable contenant le chemin vers notre script PHP côté serveur qui se chargera de créer le paiement
      var CREATE_URL = 'paypal_create_payment.php?id=<?php echo $id_contact ?>&mtt=<?php echo $montant; ?>';
      // On exécute notre requête pour créer le paiement
      return paypal.request.post(CREATE_URL)
        .then(function(data) { // Notre script PHP renvoie un certain nombre d'informations en JSON (vous savez, grâce à notre echo json_encode(...) dans notre script PHP !) qui seront récupérées ici dans la variable "data"
          if (data.success) { // Si success est vrai (<=> 1), on peut renvoyer l'id du paiement généré par PayPal et stocké dans notre data.paypal_reponse (notre script en aura besoin pour poursuivre le processus de paiement)
              return data.paypal_response.id;   
          } else { // Sinon, il y a eu une erreur quelque part. On affiche donc à l'utilisateur notre message d'erreur généré côté serveur et passé dans le paramètre data.msg, puis on retourne false, ce qui aura pour conséquence de stopper net le processus de paiement.
              alert(data.msg);
              return false;   
          }
        });
    },
    onAuthorize: function(data, actions) {
      // On indique le chemin vers notre script PHP qui se chargera d'exécuter le paiement (appelé après approbation de l'utilisateur côté client).
      var EXECUTE_URL = 'paypal_execute_payment.php?id=<?php echo $id_contact ?>';
      // On met en place les données à envoyer à notre script côté serveur
      // Ici, c'est PayPal qui se charge de remplir le paramètre data avec les informations importantes :
      // - paymentID est l'id du paiement que nous avions précédemment demandé à PayPal de générer (côté serveur) et que nous avions ensuite retourné dans notre fonction "payment"
      // - payerID est l'id PayPal de notre client
      // Ce couple de données nous permettra, une fois envoyé côté serveur, d'exécuter effectivement le paiement (et donc de recevoir le montant du paiement sur notre compte PayPal).
      // Attention : ces données étant fournies par PayPal, leur nom ne peut pas être modifié ("paymentID" et "payerID").
      var data = {
        paymentID: data.paymentID,
        payerID: data.payerID
      };
      // On envoie la requête à notre script côté serveur
      return paypal.request.post(EXECUTE_URL, data)
        .then(function (data) { // Notre script renverra une réponse (du JSON), à nouveau stockée dans le paramètre "data"
        if (data.success) { // Si le paiement a bien été validé, on peut par exemple rediriger l'utilisateur vers une nouvelle page, ou encore lui afficher un message indiquant que son paiement a bien été pris en compte, etc.
          window.location.replace("http://french-american.org/evenements/merciadhesion.php");
          //alert("Paiement approuv\351 ! Merci !");
        } else {
          // Sinon, si "success" n'est pas vrai, cela signifie que l'exécution du paiement a échoué. On peut donc afficher notre message d'erreur créé côté serveur et stocké dans "data.msg".
          alert(data.msg);
        }
      });
    },
    onCancel: function(data, actions) {
      alert("Erreur de paiement : vous avez ferm\351 la fen\352tre de paiement.");
    },
    onError: function(err) {
      alert("Erreur de paiement : une erreur est survenue. Merci de bien vouloir r\351essayer ult\351rieurement.");
    }
  }, '#bouton-paypal');
</script>

<?php

/* Debut de paiement Paypal */

/*echo '<font face=Verdana size=2><center><br><br>

Merci.<br /><br />Pour finaliser votre inscription, nous vous invitons à effectuer votre règlement en ligne par carte bancaire via Paypal.<br>

<br><br>

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">

<input type=hidden name="amount" value="'.number_format($montant, 2, '.', '').'">

<input type=hidden name="cmd" value="_xclick">

<input name="return" type="hidden" value="http://www.french-american.org/evenements/merciadhesion.php">

<input name="cancel_return" type="hidden" value="http://www.french-american.org/evenements/annuleadhesion.php">

<input name="notify_url" type="hidden" value="http://www.french-american.org/evenements/ipn_paypal_adhesion.php?id_commande='.$id_contact.'">

<input type=hidden name="email" value="'.$email_contact.'">

<input type=hidden name="currency_code" value="EUR">

<input type=hidden name="no_shipping" value="1">

<input type="hidden" name="charset" value="utf-8">

<input type="hidden" name="business_dev" value="'.'franck_1300481920_biz@netcourrier.com'.'">

<input type="hidden" name="business" value="'.'contact@french-american.org'.'">

<input type=hidden name="item_name" value="Adhésion French American Foundation">

<input type=hidden name="no_note" value="1">

<input name="custom" type="hidden" value="'.$id_contact.'" />

<input type=submit name=submit value="Proc&eacute;der au paiement s&eacute;curis&eacute; par CB &gt;&gt;">

</form>

<br><br>';*/

/* Fin de paiement Paypal */

?>

</td>

</tr>

</table>

</div>

</body></html>