8796 sujets

Développement web côté serveur, CMS

Bonjour à tous et à toutes!

Avant tout, j'inaugure mon premier message en félicitant le taff de ce site qui fait un boulot formidable au travers de ses articles, tutos et tout le reste! Pour tout ça, merci!

(D'ailleurs en parlant premier message, je n'ai pas vu de section pour se présenter, j'espère que l'ont ne me coupera pas les doigts avant de me goudronner le corps en me parsemant de plumes!)

Pour en revenir au but de ce message, je suis en train de refaire mon portfolio. Afin de m'amuser un peu, j'ai décider de le faire en mono-page avec une grosse couche de javascript. Hors de ce fait, je me retrouve assez embêter lors de l'envoie de mon formulaire. En effet, je retourner systématiquement sur la home page (j'utilise une page annexe style formmail.php). Est-il donc possible d'intégrer le script php à ma page principale tout en empêchant que celle-ci ne soit rafraichie?

D'avance merci,

cdlt,

François-Xavier
Modifié par fxmichel (16 Sep 2010 - 13:05)
Salut et bienvenue à toi,

a écrit :
(D'ailleurs en parlant premier message, je n'ai pas vu de section pour se présenter, j'espère que l'ont ne me coupera pas les doigts avant de me goudronner le corps en me parsemant de plumes!)

Tu ne l'as juste pas trouvé mais il existe pourtant dans le bar : [Sujet unique] Le sujet des présentations. Mais rassure toi, on préfère utiliser le goudron pour en revêtir les routes qui mènent à une meilleure connaissance des standards. Quand aux doigts, on te les laisse pour coder plus facilement dans ton Notepad++ Smiley lol

Concernant ton problème, peut être serait-il mieux de nous fournir le code du script en question, car il doit contenir une redirection, qu'il te faudrait tout simplement supprimer pour éviter d'être renvoyé à la mage principale. Smiley smile
Modifié par Mikachu (13 Sep 2010 - 11:50)
Hello fxmichel et bienvenue, Smiley smile

fxmichel a écrit :
(D'ailleurs en parlant premier message, je n'ai pas vu de section pour se présenter, j'espère que l'ont ne me coupera pas les doigts avant de me goudronner le corps en me parsemant de plumes!)
Ce sujet existe bien et nous avons depuis longtemps laissé tomber le goudron et les plumes pour les remplacer par le pilori et/ou le fouet. Smiley sm

Sinon je suppose que tu as prévu un fonctionnement normal avec JavaScript désactivé et que ce dernier n'est utilisé qu'en surcouche ? Pour ce qui est de ta question tu devrais regarder du côté d'Ajax ( et pour te simplifier la vie du côté de jQuery Ajax ).

Edit: Pinaise ! Grillé de 5 secondes !
Modifié par Heyoan (13 Sep 2010 - 11:51)
Oups, je n'avais pas vu ce poste. Plus en bas à droite avec le fouet!!! Ho oui comme ca!

Plus sérieusement, je passe me présenter directement après afin de corriger ce manquement de ma part!

En fait, j'ai fait une version avec javascript et refait le site en monopage mais sans navigation pour nos amis les <noscript> et les IE6iens.

Pour ce qui est de mon problème, j'ai fait dans le classique étant assez mauvais en php. C'est à dire :

<form method="post" action="formmail.php" name="formulaire">


Et pour le formmail.php :

<?php 
    $TO = "mon-email@gmail.com"; 
    $h = "Formulaire"; 
    $message = ""; 
    
    while (list($key, $val) = each($HTTP_POST_VARS)) 
    { 
        $message .= "$key : $val\n"; 
    } 
    
    mail($TO, $subject, $message, $h); 
    header("Location: index.html");
?> 


Ce que je souhaiterais arriver à faire est d'ajouter ce script à mon index.php et qu'au clic sur le bouton envoyer, ma page ne change pas.

Je ne sais pas si cela est possible par contre.

Merci pour vos réponses!
salutation....

Pour répondre à ton message et directement à ta question, il n'y apas de solution en dehors d'un Script JS...

un innerhtml par exemple dans ton div...

donc la question se pose pour ceux qui désactive le js.. dans ces cas là il n'yaura que le rechargemnt de page.. masi si tu gère bien les deux cas ça pose pas de problème...
fxmichel a écrit :
En fait, j'ai fait une version avec javascript et refait le site en monopage mais sans navigation pour nos amis les <noscript> et les IE6iens.
Pour être sûr de comprendre : ton site fonctionnait bien et tu t'es amusé à le rendre inaccessible à tous tes visiteurs qui ne disposent pas de JavaScript par choix ou par obligation ? Drôle d'idée ! Smiley lol
Pour rappel le JavaScript ne devrait être utilisé qu'en surcouche et techniquement il est tout à fait possible de laisser un site utilisable sans JS et, via Ajax (et seulement si le JavaScript est disponible), de ne pas recharger les pages. En général il n'y a bien que le développeur qui s'intéresse à ça d'ailleurs et le visiteur s'en moque.
Sinon quel rapport avec IE6 ? Il se débrouille aussi bien avec JavaScript qu'avec Ajax.

fxmichel a écrit :
Ce que je souhaiterais arriver à faire est d'ajouter ce script à mon index.php et qu'au clic sur le bouton envoyer, ma page ne change pas.
Au sens strict du terme il n'y a pas besoin de JavaScript pour ça : il suffirait de ne pas cibler formmail.php mais la page en cours, d'y inclure le contenu de formmail.php, de rajouter un test pour n'envoyer un mail que si le formulaire a été soumis comme par exemple if($_SERVER['REQUEST_METHOD']=='POST') et enfin de ne pas faire de redirection à la fin (fonction header).
Par contre si tu affiches / masques le contenu via JS ça se complique et t'oblige effectivement à utiliser Ajax.
En fait, j'avais d'emblée prévu de faire une version IE6/sans javascript classique pour l'accessibilité.

De ce fait, pour la version lourde de mon site, je n'avais plus de réelle limite, pouvant faire un peu ce que je souhaite. De ce fait par exemple, la zone de contact apparait au clic et est accessible partout sur le site. D'où mon envie de ne pas avoir de rafraichissement.

Je sais que c'est plus propre une dégradation progressive, mais je souhaitais vraiment m'amuser lors de l'élaboration de mon site. D'où une version pour tout ce qui pouvait me brider.