Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Problem with comparison.

Ignore whitespace Rev HEAD → Rev 1

/obs_saisons/SPIP-v1-8-3/modules/inscription.php
New file
0,0 → 1,340
<?php
 
$erreurs = array();
 
include("connect.php");
include_once 'configuration/car_config.inc.php' ;
include("messages.php");
 
if (!PARTICIPANT_EST_ADULTE) {
echo '<script language="javascript">
 
function changementType() {
if (document.forms[\'form_inscription\'].elements[\'type_inscription\'].value==\'1\') {
document.forms[\'form_inscription\'].elements[\'ecole\'].disabled = false;
document.forms[\'form_inscription\'].elements[\'ecole\'].className = "";
document.forms[\'form_inscription\'].elements[\'niveau\'].disabled = false;
document.forms[\'form_inscription\'].elements[\'niveau\'].className = "";
}
else {
document.forms[\'form_inscription\'].elements[\'ecole\'].disabled = true;
document.forms[\'form_inscription\'].elements[\'ecole\'].className = "disabled";
document.forms[\'form_inscription\'].elements[\'niveau\'].disabled = true;
document.forms[\'form_inscription\'].elements[\'niveau\'].className = "disabled";
}
}
</script>
';
}
 
/**** A-t-on demandé à s'inscrire ? ****/
if (isset($_POST['valid'])) {
//Vérification de l'adresse mail
if ($_POST['mail']!=$_POST['mail_confirm'])
$erreurs[] = $mail_invalide;
 
//Verification des champs obligatoires
if (!$_POST['pseudo'])
$erreurs[] = $pseudo_manquant;
if ($_POST['type_inscription']=='1' && !$_POST['ecole'])
$erreurs[] = $ecole_manquant;
if (!$_POST['nom'])
$erreurs[] = $nom_manquant;
if (!$_POST['prenom'])
$erreurs[] = $prenom_manquant;
if (!$_POST['adresse'])
$erreurs[] = $adresse_manquant;
// On ne verifie la presence du code postal uniquement pour la france //FONCTIONNEMENT_TESTE_ET_OK
if (($_POST['pays']) && ($_POST['pays']=='fr')) {
if (!$_POST['code_postal']) {
$erreurs[] = $cp_manquant;
}
else { // On padde a gauche avec des zero
$_POST['code_postal']=str_pad($_POST['code_postal'], 5, "0", STR_PAD_LEFT);
}
}
if (!$_POST['ville'])
$erreurs[] = $ville_manquant;
 
if (!$_POST['mail'])
$erreurs[] = $mail_manquant;
if (!$_POST['mail_confirm'])
$erreurs[] = $mail_confirm_manquant;
if (!$_POST['pays'])
$erreurs[] = $pays_confirm_manquant;
$visible = (isset($_POST['nom_prenom_visible']))? '1':'0' ;
$newslettre = (isset($_POST['newsletter']))? '1':'0' ;
$type_inscrip = (isset($_POST['type_inscription']))? $_POST['type_inscription']: "NULL" ;
$niveau = (isset($_POST['niveau']))? $_POST['niveau']: "NULL" ;
}
 
$choixCommune = false;
 
/**** L'inscription va avoir lieu, dernieres verifs aux niveau de la base ****/
if (isset($_POST['valid']) && sizeof($erreurs)==0 && !isset($_POST['commune'])) {
 
 
//on regarde si la commune n'est pas dans la region de phenoclim
//Suppression verification suite refonte inscription Septembre 2008
/*
$requete_phclim = mysql_query("select COMMUNE_PHENOCLIM from COMMUNE where lpad( COMMUNE_CODEPOSTAL, 5, '0' )='".$_POST['code_postal']."'");
$commune_phclim = mysql_fetch_row($requete_phclim);
if ($commune_phclim[0]==1)
$erreurs[] = $commune_phenoclim;
else {
//Verification de la commune
$requete_commune = mysql_query("select COMMUNE_ID, COMMUNE_NOM from COMMUNE where lpad( COMMUNE_CODEPOSTAL, 5, '0' )='".$_POST['code_postal']."'");
$nb_communes_poss = mysql_num_rows($requete_commune);
if ($nb_communes_poss > 1)
$choixCommune = true;
else if ($nb_communes_poss>0) {
$commune_tab = mysql_fetch_row($requete_commune);
$commune = $commune_tab[0];
} else {
$erreurs[] = $commune_invalide;
}
}
*/
//Verification du pseudo
$requete_pseudo = mysql_query("select PARTICIPANT_PSEUDO from PARTICIPANT where PARTICIPANT_PSEUDO LIKE '".addSlashes($_POST['pseudo'])."'");
if (mysql_num_rows($requete_pseudo)>0)
$erreurs[] = $pseudo_existant;
}
 
//S'il n'y a qu'une commune correspondant au code postal choisi
if (isset($_POST['valid']) && sizeof($erreurs)==0 ) {
 
//Generation du mot de passe
$alphabet = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
for ($i=0; $i<3; $i++) {
$motdepasse .= $alphabet[rand(0,sizeof($alphabet))];
}
for ($i=0; $i<3; $i++) {
$motdepasse .= rand(0,9);
}
 
if (!PARTICIPANT_EST_ADULTE) {
$sujet_mail = "Bienvenue sur l'Observatoire des Saisons Junior!";
$texte_mail = "Merci de ton inscription à ODS Junior !
Pour valider ton inscription, va à l'adresse http://junior.obs-saisons.fr/valider.php?pseudo=";
} else {
$sujet_mail = "Bienvenue sur l'Observatoire des Saisons !";
$texte_mail = "Merci de votre inscription à l'Observatoire Des Saisons !
Pour la valider, rendez-vous à l'adresse http://obs-saisons.fr/valider.php?pseudo=";
}
$texte_mail .= urlencode($_POST['pseudo']);
$texte_mail .= "
Votre identifiant est : ".addSlashes($pseudo)."
Votre mot de passe est : $motdepasse
 
Gardez précieusement ce message, vos identifiants et de mot de passe vous permettront d'accéder à certaines rubriques.";
 
//Envoi du mail
if (!mail($mail,CAR_PREFIXE_MAIL.$sujet_mail,$texte_mail,"From: no-reply@obs-saisons.fr"))
$erreurs[] = "Votre adresse e-mail est apparemment invalide, veuillez en saisir une autre.";
else {
mail("contact@obs-saisons.fr",CAR_PREFIXE_MAIL.$sujet_mail,$texte_mail,"From: no-reply@obs-saisons.fr");
//Construction de la requete d'inscription
$requete_inscript = "insert into PARTICIPANT (COMMUNE_ID, NIVEAU_ID, TYPE_INSCRIPTION_ID, PARTICIPANT_PSEUDO, ".
"PARTICIPANT_ECOLE, PARTICIPANT_NOM, PARTICIPANT_PRENOM, PARTICIPANT_ADRESSE, PARTICIPANT_CODE_POSTAL,".
"PARTICIPANT_VILLE, PARTICIPANT_EMAIL, PARTICIPANT_ADULTE, PARTICIPANT_EN_ATTENTE, PARTICIPANT_MOTDEPASSE,".
"PARTICIPANT_NOM_PRENOM_VISIBLE, PARTICIPANT_RECEVOIR_NEWSLETTER, PAYS_ID, DEPARTEMENT_ID,".
"PARTICIPANT_DATE_INSCRIPTION) ".
"values ('$commune', ".$niveau.", ".$type_inscrip.", '".addSlashes($_POST['pseudo']).
"', '".addSlashes($_POST['ecole'])."', "."'".addSlashes($_POST['nom'])."', '".addSlashes($_POST['prenom']).
"', '".addSlashes($_POST['adresse'])."', '".addSlashes($_POST['code_postal'])."', '".addSlashes($_POST['ville']).
"', "."'".$_POST['mail']."', ".PARTICIPANT_EST_ADULTE.", 1, '".$motdepasse."', ".$visible.", ".$newslettre.", '".
$_POST['pays']."', '".substr($_POST['code_postal'],0,2)."', now())";
//faut il inscrire le mail à la newsletter
if (isset($_POST['newsletter'])) {
mail('actu-subscribe@obs-saisons.fr',"Inscription actualites de l'Observatoire des Saisons",
'inscription',"From: ".$_POST['mail']);
}
if (!PARTICIPANT_EST_ADULTE) {
$base_forum = 'phpbb_users';
} else {
$base_forum = 'phpbbadults_users';
}
$sql_forum = "SELECT MAX(user_id) AS total
FROM $base_forum";
if ( !($result = mysql_query($sql_forum)) )
{
$erreurs[] = "1 Une erreur est survenue";
}
if ( !($row = mysql_fetch_row($result)) )
{
$erreurs[] = "2 Une erreur est survenue";
}
$user_id = $row[0] + 1;
 
//
// Get current date
//
$sql = "INSERT INTO $base_forum (user_id, username, user_regdate, user_email, user_lang, user_password)
VALUES ($user_id, '" . str_replace("\'", "''", addSlashes(urldecode($pseudo))) . "', " . time() . ", '" . str_replace("\'", "''", $_POST['mail']) . "', 'french', '".md5($motdepasse)."')";
if (!mysql_query($requete_inscript))
$erreurs[] = "La requete a echoue : ".mysql_error();
else
$inscriptionOk = true;
if (!mysql_query($sql))
$erreurs[] = "Votre inscription a bien ete prise en compte mais vous n'avez pas ete inscrit au forum suite a une erreur ".mysql_error();
}
}
if (!(isset($_POST['valid']) && sizeof($erreurs)==0) || $choixCommune) {
 
/***** Demande d'inscription au site *****/
 
$requete_types = mysql_query("select TYPE_INSCRIPTION_ID, TYPE_INSCRIPTION_NOM from TYPE_INSCRIPTION");
 
$requete_niveaux = mysql_query("select NIVEAU_ID, NIVEAU_NOM from NIVEAU");
 
//Affichage des eventuelles erreurs
if (sizeof($erreurs)>0) {
echo "<div class='erreurs'>";
foreach ($erreurs as $err)
echo $err."<br>";
echo "</div>";
}
 
//Selon le type d'inscription, il faudra afficher ou pas certains champs
function disable($type_inscr) {
if ($type_inscr && $type_inscr!='1')
echo " class=\"disabled\" disabled=\"true\"";
}
?>
<br>
<form name="form_inscription" method="post" action="#">
<table border="0">
 
 
<?php
if (!PARTICIPANT_EST_ADULTE) { ?>
<tr>
<td>Je m'inscris avec</td>
<td><select name="type_inscription" onchange="changementType()">
<?php
while ($type = mysql_fetch_row($requete_types)) {
echo "<option value='".$type[0]."'";
if ($_POST['type_inscription']==$type[0])
echo " selected";
echo ">".$type[1];
}
?>
</select></td>
</tr>
<tr>
<td>Notre pseudo est </td>
<td><input type="text" name="pseudo" value="<?= $_POST['pseudo'] ?>"></td>
</tr>
<tr>
<td>Le nom de mon école est </td>
<td><input type="text" name="ecole" value="<?= $_POST['ecole'] ?>" <?= disable($_POST['type_inscription']) ?>></td>
</tr>
<tr>
<td>Le niveau de ma classe est</td>
<td><select name="niveau" <?= disable($_POST['type_inscription']) ?>>
<?php
while ($niveau = mysql_fetch_row($requete_niveaux)) {
echo "<option value='".$niveau[0]."'";
if ($_POST['niveau']==$niveau[0])
echo " selected";
echo ">".$niveau[1];
}
?>
</select></td>
</tr>
<tr>
<td>Le nom du responsable est</td>
<td><input type="text" name="nom" value="<?= $_POST['nom'] ?>"></td>
</tr>
<tr>
<td>Le prénom du responsable est</td>
<td><input type="text" name="prenom" value="<?= $_POST['prenom'] ?>"></td>
</tr>
<tr>
<?php } else { ?>
<tr>
<td style="text-align:right;">Identifiant (pseudo) : </td>
<td><input type="text" name="pseudo" value="<?= $_POST['pseudo'] ?>"></td>
</tr>
<tr>
<td style="text-align:right;">Nom : </td>
<td><input type="text" name="nom" value="<?= $_POST['nom'] ?>"></td>
</tr>
<tr>
<td style="text-align:right;">Pr&eacute;nom : </td>
<td><input type="text" name="prenom" value="<?= $_POST['prenom'] ?>"></td>
</tr>
<?php } ?>
 
<tr>
<td style="text-align:right;">Adresse postale : </td>
<td><input type="text" name="adresse" value="<?= $_POST['adresse'] ?>"></td>
</tr>
<tr>
<td style="text-align:right;">Code postal : </td>
<td><input type="text" name="code_postal" value="<?= $_POST['code_postal'] ?>"></td>
</tr>
<tr>
<td style="text-align:right;">Ville : </td>
<td><input type="text" name="ville" value="<?= $_POST['ville'] ?>"></td>
</tr>
 
<tr>
<td style="text-align:right;">Pays : </td>
<td>
<select name="pays">
<?php
$requete_pays = mysql_query("SELECT CP_ID_Pays, CP_Intitule_pays FROM carto_PAYS WHERE CP_Langue_intitule='fr'");
while ($val_pays = mysql_fetch_assoc($requete_pays)) {
echo '<option value="'.$val_pays['CP_ID_Pays'].'" ';
if ($val_pays['CP_ID_Pays']=='fr') echo 'selected="selected" ';
echo '>'.$val_pays['CP_Intitule_pays'].'</option>'."\n";
}
?>
</select>
</td>
</tr>
 
<tr>
<td style="text-align:right;">Adresse e-mail : </td>
<td><input type="text" name="mail" value="<?= $_POST['mail'] ?>"></td>
</tr>
<tr>
<td style="text-align:right;">Confirmation de l'adresse e-mail : </td>
<td><input type="text" name="mail_confirm" value="<?= $_POST['mail_confirm'] ?>"></td>
</tr>
 
<tr>
<td colspan="2"><label><input type="checkbox" name="nom_prenom_visible" id="nom_prenom_visible" value="1"
<?php if ($visible) echo 'checked="checked" ';?> />
Je souhaite voir mon nom et pr&eacute;nom apparaitre sur la carte plut&ocirc;t que mon pseudo</label></td>
</tr>
 
<tr>
<td colspan="2"><label><input type="checkbox" name="newsletter" id="newsletter" value="1"
<?php /*if ($newslettre)*/ echo 'checked="checked" ';?> />
Je souhaite &ecirc;tre abonn&eacute; &agrave; la lettre d'actualit&eacute;</label></td>
</tr>
 
<tr>
<td colspan="2" style="text-align:center;"><input type="submit" class="submit" name="valid" value="Je m'inscris!"></td>
</tr>
</table>
</form>
<?php } ?>