Suivez les fils RSS
 
Auteur
Stephanelam
# 22 Jan 2012 - 15:14:53
Citer
248 Posts
Bonjour à tous et à toutes,

J'ai sur mon site (cf. bouton du profil) un formulaire de contact, dans la page correspondante, qui est fonctionnel mis à part deux choses :

- les messages d'erreurs apparaissent sur une page toute blanche, et moi j'aimerais bien les caler au-dessus du formulaire (logique).

- les apostrophes, dans les messages que je reçois, s'affichent \'

Comment régler ces deux problèmes ?

Merci d'avance,
SL

biggrin

http://www.stephanelambion.com 
^
jb_gfx
# 22 Jan 2012 - 18:12:37
Citer
2560 Posts
Pour les apostrophes : magic quotes ou addslashes.
Pour ton autres question : ben apprendre le PHP ou trouver un script qui te convient mieux.

Je ne sais pas si je suis cultivé ou si je viens d'inventer deux nouveaux mots.

http://www.pixemedia.com/ 
^
jmlapam
# 23 Jan 2012 - 12:39:15
Citer
1991 Posts
Salut,

En javascript c'est possible, sinon tu peux/dois toujours garder des instructions PHP pour ceux qui l'auraient désactivé.

Tu définis une div par exemple:
<div class="err"></div>

Et tu la relis à un javascript de vérification des champs. Après tu peux styler les messages d'erreurs via le CSS.
Modifié par jmlapam (23 Jan 2012 - 12:39)

"Là j'essaie de mener un vrai travail de webdesigner
- Ah ouais, tu dis où il faut mettre les carrés quoi..."

http://jmperso.eu 
^
Gili
# 23 Jan 2012 - 15:07:01
Citer
304 Posts
Saloute,

Encore mieux, tu crées ce div de class error par javascript, comme ça tu ne pourris pas la sémantique de ton document avec des balises horriblement vides langue

Vainqueur du célèbre et prestigieux quizz de l'illustre Kiwiparty ... comment ça j'en fais trop ?

http://www.nicolasgilis.be msn 
^
Stephanelam
# 23 Jan 2012 - 23:02:56
Citer
248 Posts
Merci les gars pour vos réponses.

@jb_gfx : c'est quoi les magic quotes ? j'ai regardé vite fais mais je vois pas trop ce que je devrais concrètement changer dans mon script.

Je vais voir pour les divs d'erreur, je vais essayer.

biggrin

http://www.stephanelambion.com 
^
Miky76
# 25 Jan 2012 - 11:19:14
Citer
34 Posts
Salut,

Les magic_quotes c'est une directive php, à régler dans le php.ini ou via .htaccess, et en gros cela simplifie les transmissions de chaines de caractères, il ajoute automatiquement les escape chars sur les quotes quand c'est nécessaire et les retire aussi.

Un conseil si tu t'orientes vers du JS pour afficher dynamiquement des messages de retour passe par un framework type mootools pour ce faire...

Il te faudra aussi envoyer via request les données du form pour pouvoir afficher un retour sans recharger la page, a mon avis.

http://www.mightyprods.com 
^
Stephanelam
# 25 Jan 2012 - 13:44:50
Citer
248 Posts
Ok, pour les magic quotes, normalement, j'ai réussi.

Pour le style des erreurs, j'y ai pensé, et en fait, ça pourrait être pas mal si je pouvais faire ça sous forme de fenêtre modale qui affiche l'erreur, mais je sais pas encore comment je vais faire ça ...

Merci à tous en tout cas smile

http://www.stephanelambion.com 
^
Miky76
# 25 Jan 2012 - 14:54:14
Citer
34 Posts
un petit bout de code grossier pour t'aider à réaliser un dialogue modal avec une request :

Coté HTML:

<body>
<form action="traitement.php" method="post" id="monform">
Mon champ :
<input type="text" name="monchamp" id="monchamp" /><br />
<input type="submit" value="Envoyer" />
</form>
</body>


coté JS (via le framework mootools):
window.addEvent('domready', function() { 
$('monform').addEvent('submit', function(e) {
e.stop();
new Request({ url: 'monphp.php', method: 'post', onSuccess: function(reponse) {
new Element('div', { id: 'fader', styles: { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%', background: #000, opacity: 0.7 }, events: { click: function(e) { this.dispose(); } } }).inject($(document.body), 'bottom');
new Element('div', { id='dialogue', html: reponse, styles: { position: 'absolute', left: '50%', top: '50%', width: 400, height: 200, marginLeft: -200, marginTop: -100, padding: 5 } }).inject('fader');
} }).send('monchamp='+$('monchamp').get('value');
});


Et coté PHP:

// monphp.php
if ($_POST["monchamp"]) echo 'Saisie OK';
else echo 'Remplir le formulaire !';


En gros la validation du form appelle le php, tout ce qui est en sortie sur le php est retourné via l'événement onSuccess() du request et ensuite le script mootools ajoute un div opacifié sur la page contenant un div centré qui affiche le retour du php. L'event click() du div fader permet de supprimer le fader et ses enfants, mais peut être mis sur un lien ou autre... c'est juste une ébauche pour te donner l'idée.
Modifié par Miky76 (25 Jan 2012 - 14:55)

http://www.mightyprods.com 
^
Stephanelam
# 27 Jan 2012 - 20:20:17
Citer
248 Posts
Salut, et merci beaucoup, je vais voir ça !

:)

http://www.stephanelambion.com 
^
Crousti2
# 28 Jan 2012 - 12:38:03
Citer
162 Posts
Mais pourquoi styliser en utilisant javascript alors que ta vérification tu la fais en php et au lieu de la faire sur une page blanche à part tu le fais sur la meme page !

http://www.montpasab.fr 
^
PanPan50
# 28 Jan 2012 - 16:59:00
Citer
55 Posts
Crousti2 a écrit :
Mais pourquoi styliser en utilisant javascript alors que ta vérification tu la fais en php et au lieu de la faire sur une page blanche à part tu le fais sur la meme page !


Le mieux est encore de faire 2 validations, une en javascript qui évite d'envoyer le formulaire si il n'est pas correctement renseigné, et un autre en PhP pour refaire une validation complète au cas où le js est désactivé, et évidemment renvoyer sur la même page pour la validation...

http://www.guillaumeavoine.com/ 
^
Stephanelam
# 01 Feb 2012 - 14:36:02
Citer
248 Posts
Ouais mais en fait le problème est que je suis pas une lumière en php, et du coup je rame un peu ... mais je m'y mets doucement, je vais y arriver.

biggrin

http://www.stephanelambion.com 
^