Bonjour,
je suis bloqué sur un fancybox qui ne veut pas s'afficher sous chrome alors sur IE elle marche très bien. Le truc bizarre de mon problème c'est que j'ai deux fancybox sur la page : une pour la connexion et une pour l'inscription. La fancybox qui ne fonctionne pas me sert pour l'inscription sur mon site. Lorsque je clique sur le bouton pour l'ouvrir, j'ai l'affichage du petit chargement puis plus rien. Alors que pour ma fancybox de connexion, après l'affichage du chargement, la fancybox apparaît. Donc je me remet à votre aide.
Voici le code que j'utilise :
Ma page index, pour ouvrir les fancybox.
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <div id="col2"> <p>Inscription</p> <a class="bouton fancybox4" data-fancybox-type="iframe" href="ajout.php">Inscription</a> <p>Déjà inscrit</p> <a class="bouton fancybox" data-fancybox-type="iframe" href="connexion.php">Se connecter</a> </div>
Le code de ma fancybox d'inscription (celle qui ne marche pas)
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108 <?php session_start(); require 'constante.inc.php'; require_once REP_INC . '/class.fonction.inc.php'; require REP_INC . '/connexion.inc.php'; require_once REP_INC . '/class.donnees.inc.php'; // appel à partir de la page ajouter.php suite à la détection d'erreur if (isset($_SESSION['post'])) { $email = $_SESSION['post']["email"]; $pseudo = $_SESSION['post']["pseudo"]; unset($_SESSION['post']); $lesErreurs = $_SESSION['lesErreurs']; unset($_SESSION['lesErreurs']); // appel à partir du fichier ajouter.php suite à la validation de la création } elseif (isset($_SESSION['msg'])) { ?> <script type="text/javascript"> parent.window.location.reload(true); window.parent.$.fancybox.close(); </script> <?php exit; } // on arrive ici soit par un appel venant de la page index ou de ajouter avec erreur ?> <!DOCTYPE html> <html lang="fr"> <head> <title>Ajout d'un utilisateur</title> <meta charset="UTF-8"> <link rel="shortcut icon" href="favicon.ico"/> <link rel="stylesheet" type="text/css" href="<?php echo REP_CSS ?>/fenetre.css" /> <script type="text/javascript" src="<?php echo REP_JS ?>/fonction.js"></script> <script type="text/javascript" src="<?php echo REP_JS ?>/jquery-1.9.0.min.js"></script> <script type="text/javascript" src="js/verifajout.js"></script> </head> <body > <div id="titrepage"> Création de votre profil </div> <div > <form id="monformulaire" method='post' action='ajouter.php'> <p> <label for="email" accesskey='E'>E-Mail*</label> <br /> <input type='text' size='35' id ='email' name = 'email' value = "<?php echo (isset($email)) ? htmlspecialchars($email) : "" ?>" autocomplete="off" required="required" /> <?php if (isset($lesErreurs["email"])) { echo "<span class='erreur'>" . $lesErreurs["email"] . "</span>"; } ?> </p> <p> <label for = "pseudo" accesskey = "L" >Pseudo* </label> <br /> <input type = 'text' size = '30' id = 'pseudo' name = 'pseudo' value="<?php echo isset($pseudo) ? $pseudo : "";?>" required="required" autocomplete="off" /> <?php if (isset($lesErreurs["pseudo"])) { echo "<span class='erreur'>" . $lesErreurs["pseudo"] . "</span>"; } ?> </p> <p> <label for = "motPasse" accesskey = "M" >Mot de passe*</label> <br /> <input type = 'password' id = 'motPasse' name = 'motPasse' required="required" /> <?php if (isset($lesErreurs["motPasse"])) { echo "<span class='erreur'>" . $lesErreurs["motPasse"] . "</span>"; } ?> </p> <p> <label for="motPasseConf" accesskey="C">Confirmation du mot de passe*</label> <br /> <input type='password' id='motPasseConf' name='motPasseConf' required="required" /> <?php if (isset($lesErreurs["motPasseConf"])) { echo "<span class='erreur'>" . $lesErreurs["motPasseConf"] . "</span>"; } ?> </p> <p> <input type='submit' value='Ajouter' /> </p> </form> </div> </body> </html>
Le code pour l'ajout de l'utilisateur dans la base.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112 <?php session_start(); require 'constante.inc.php'; require_once REP_INC . '/class.fonction.inc.php'; require REP_INC . '/connexion.inc.php'; require_once REP_INC . '/class.donnees.inc.php'; if (!Fonction::verifierLesChamps('email', 'pseudo', 'motPasse', 'motPasseConf')) { $_SESSION['msg'] = "Demande incomplète"; header("Location:index.php"); exit; } // récupération des paramètres transmis par la méthode POST $email = $_POST["email"]; $pseudo = trim($_POST["pseudo"]); $motPasse = $_POST["motPasse"]; $motPasseConf = $_POST["motPasseConf"]; // Conrôles des données $lesErreurs = array(); if (empty($nom)) { $lesErreurs["nom"] = " Saisissez votre nom "; } elseif (!Fonction::formatValide($nom, 'nom')) { $lesErreurs["nom"] = " Caractères non acceptés "; } // contrôle du prénom if (empty($prenom)) { $lesErreurs["prenom"] = " Saisissez votre prénom"; } elseif (!Fonction::formatValide($prenom, 'nom')) { $lesErreurs["prenom"] = " Caractères non acceptés "; } // contrôle de l'unicité du nom et prénom if (!isset($lesErreurs["nom"]) && !isset($lesErreurs["prenom"])) { if (Donnees::verifierUniciteNomPrenomMod($nom, $prenom, $id) === 1) { $lesErreurs["nom"] = " Utilisateur déjà inscrit"; } } // contrôle de l'email if (empty($email)) { $lesErreurs["email"] = " Saisissez votre adresse e-mail"; } elseif (!Fonction::formatValide($email, 'email')) { $lesErreurs["email"] = " Format invalide"; } else { if (Donnees::verifierUniciteEmailMod($email, $id) === 1) { $lesErreurs["email"] = " E-mail déjà utilisée"; } } // contrôle du pseudo // le pseudo doit être renseigné, respecter le format 'pseudo' et être unique if (empty($pseudo)) { $lesErreurs["pseudo"] = " Saisissez votre pseudo "; } elseif (!Fonction::formatValide($pseudo, 'pseudo')) { $lesErreurs["dateNaissance"] = " Caractères non acceptés "; } else { if (Donnees::verifierUnicitePseudo($pseudo) == 1) { $lesErreurs["pseudo"] = " Pseudo non disponible"; } } // controle du mot de passe // le mot de passe doit être renseigné et être formé de 4 caractères if (empty($motPasse)) { $lesErreurs["motPasse"] = " Saisissez votre mot de passe"; } else { if (strlen($motPasse) != 4) { $lesErreurs["motPasse"] = " Le mot de passe doit contenir 4 caractères"; } } // controle du mot de passe confirmé : // ce mot doit être renseigné if (empty($motPasseConf)) { $lesErreurs["motPasseConf"] = " Saisissez la confirmation du mot de passe"; } // contrôle de l'égalité des mots de passe // si on n'a pas d'erreur sur les deux mots, les deux mots doivent être identiques if (!isset($lesErreurs["motPasse"]) && !isset($lesErreurs["motPasseConf"])) { if ($motPasse != $motPasseConf) { $lesErreurs["motPasseConf"] = " Les mots de passe ne sont pas identiques"; } } if (count($lesErreurs) > 0) { $_SESSION ['lesErreurs'] = $lesErreurs; $_SESSION ['post'] = $_POST; header("Location:modification.php"); exit; } // enregistrement dans la table $id = Donnees::addMembre($pseudo, $motPasse, $email); if (!$id) { $_SESSION['msg'] = "Echec de la création, contacter l'administrateur"; } else { $_SESSION['id'] = $id; $_SESSION['pseudo'] = $pseudo; $_SESSION['msg'] = "bonjour " . $_SESSION['pseudo']; // il faut créer un répertoire pour le dépôt des documents $repertoire = REP_DOC . "/" . $pseudo; if (mkdir($repertoire) == false) { $_SESSION['msg'] += "Impossible de déposer des documents !, contacter l'administrateur"; } } header("Location:ajout.php");
Ma fonction d'ajout de l'utilisateur
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public static function addMembre($pseudo, $passe, $email) { global $db; $sql = "insert into membres(pseudo, passe, email, groupe ) values (:1, :2, :3, :4, :5)"; $curseur = $db->prepare($sql); $curseur->bindParam(':1', $pseudo); $curseur->bindParam(':2', $passe); $curseur->bindParam(':3', $email); $curseur->bindParam(':4', '1'); if ($curseur->execute()) { return $db->lastInsertId(); } else { return 0; } } }
Merci pour votre futur aide, car là je suis sur le point de péter un câble![]()
Partager