Annonce

Faites la différence entre le service WordPress.com et l'application libre WordPress.

Mettez-vous à jour ! WordPress 3.3.2 est disponible en français.

Annonce 1 : Le Codex en français a besoin de vous pour avancer !
Annonce 2 : Avant de poster, n'oubliez pas de faire une petite recherche et de lire les règles de ce forum.
Annonce 3 : Lisez notre blog, il regorge de bonnes informations.
Annonce 4 : Rejoignez-nous sur Facebook, Google + et sur Twitter

#1 23-01-2012 13:54:30

lahrim
Habitué WP
Date d'inscription: 27-05-2008
Messages: 60
Site web

code php dans du script js

Hello,

Problème(s) rencontré(s) :

Une question sans doute simple, je souhaite ajouter le code :

Code: html

<?php include (TEMPLATEPATH . '/soumettre_cv.php'); ?>

dans la partie

Code: html

.html()

Code: html

$('.art').empty().html();

j'ai fait ceci mais cela ne fonctionne pas :

Code: html

<script type="text/javascript">
			jQuery(document).ready(function(){
				$('li.article').click(function() {
					$('li').removeClass('active');
					$('li.article').addClass('active');
					$('.art').empty().html('<?php include (TEMPLATEPATH . '/soumettre_cv.php'); ?>');
				})
				return false;
			});
</script>

Merci


Orthographes en grèves

Hors ligne

 

#2 23-01-2012 19:48:58

lahrim
Habitué WP
Date d'inscription: 27-05-2008
Messages: 60
Site web

Re: code php dans du script js

Pour info, j'utilise la dernière version de WP, pas de plugin et le site est en ligne et j'utilise un théme perso,

Tu à vue juste il s’agit d'un menu, l'action est que lorsque l'on clique sur un lien celui-ci supprime le contenu de la balise <div class="art"></div> et intègre le contenu d'une page, donc la page soumettre_cv.php, mais justement cela fonctionne quand je mes simplement du texte dans .html('exemple de texte'), mais quand j'ajoute include celui-ci ne fonctionne pas.


Orthographes en grèves

Hors ligne

 

#3 23-01-2012 21:25:07

lahrim
Habitué WP
Date d'inscription: 27-05-2008
Messages: 60
Site web

Re: code php dans du script js

en faite dans le menu, le lien est la pour ne pas charger la page et ne pas changer de page, il y a 3 liens (soumettre_1, soumettre_2, soumettre_3) qui sont 3 formulaires différents, quand je clik sur le lien il va changer juste le formulaire et non toute la page (si non j'aurai simplement mis un lien direct et ne casserai pas la tête aussi longtemps)

Pour cela que je souhaite simplement ajouter un include de la page

(je regarde les liens que tu à mis wink )


Orthographes en grèves

Hors ligne

 

#4 26-01-2012 16:34:11

KwarK
Habitué WP
Date d'inscription: 11-04-2011
Messages: 60

Re: code php dans du script js

.js "s'exécute" (manipule le DOM) côté navigateur. Le php s'exécute uniquement côté serveur et chaque fichier comportant du php doit avoir l'extension.php pour que le php contenu s'exécute sinon tu restera bredouille.

Si tu veux afficher dynamiquement l'appel à du php dans ta page, il faut utiliser xmlhttpRequest qui te permettra d'avoir l'effet voulu (ne pas recharger la page du client et afficher ton résultat d'exécution.php)

Moi, je ne toucherai pas à mes formulaires.php_ou_.html peut importe, je ferais un fichier traitement.php que je ciblerais avec une entête xmlhttprequest via un évènement onclick. Je mettrais dans traitement.php mes includes et c'est une valeur de variable récupérée via le fichier xmlhttpRequest et une function xmlHttpRequest qui définirait qu'elle formulaire est appelé (include1 || include2 || include 3 dans traitement.php).

Ça te permettrais de ne pas recharger la page et d' avoir l'effet voulu en quelques lignes de code sans toucher à ton effet JQuery tab ou autres du menu.


Si tu veux utiliser JQuery http://api.jquery.com/jQuery.ajax/

Pour en savoir + > Google > "xmlhttpRequest"

Un exemple pour te mettre sur des pistes

Code: "html"

<!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
<script language="javascript">
function recupmonidmenu(){ //On récupère  l' attribut name du lien du menu pour pouvoir traiter la bonne requête
var number = document.getElementById('menu').name;
var xhr_object = null;

if(window.XMLHttpRequest) // Firefox
   xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest. Veuillez mettre à jour.");
   return;
}

xhr_object.open("POST", "/traitement.php", true); //Méthode, fichier à cibler

xhr_object.onreadystatechange = function() {
   if(xhr_object.readyState == 4){
   document.getElementById('divvide').innerHTML = xhr_object.responseText;
   }
}

xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); //Invariable si on passe des paramètres
var data = "number="+number+""; //On passe la variable number en paramètre comme pour un vrai formulaire
xhr_object.send(data);
}
</script>
</head>

<body>
<ul><li><a href="#" id="menu" onclick="this.name='form1'; recupmonidmenu(); return false;">Form1</a></li></ul>
<div id="divvide"></div>

</body>
</html>


traitement.php

Code: "php"

<?php

if (isset($_POST['number']))
{
	
$num = htmlentities($_POST['number']);

	if ($num == 'form1')
	{
		echo 'Form 1'; // En faite ton include au lieu d'un echo, c'est juste pour l'exemple
	}
	else{}
}

sleep(1);//Evite les requêtes trop nombreuses
?>
 

Dernière modification par KwarK (26-01-2012 21:29:30)

Hors ligne

 

#5 26-01-2012 16:51:54

KwarK
Habitué WP
Date d'inscription: 11-04-2011
Messages: 60

Re: code php dans du script js

Là, çà risque d'être brutal l'affichage mais après tu peux ajouter un display block, display none sur une div avec une image .gif "load" (pour un peu de style vu le sleep(1) du fichier php) et utiliser JQuery pour que çà s'affiche un peu moins brutalement.

Dernière modification par KwarK (26-01-2012 16:55:41)

Hors ligne

 

#6 26-01-2012 21:25:41

KwarK
Habitué WP
Date d'inscription: 11-04-2011
Messages: 60

Re: code php dans du script js

Edit: corrigé (exemple simple avec xmlhttpRequest)

Tu peux aussi charger les différents formulaires directement dans la page et juste un simple Toggle JQuery avec animation peut faire l'affaire, ou slideup slidedown

Y a un joli effet ici justement avec 3 éléments http://www.randomsnippets.com/2011/04/1 … th-jquery/

Dernière modification par KwarK (26-01-2012 22:06:59)

Hors ligne

 

#7 27-01-2012 15:47:58

lahrim
Habitué WP
Date d'inscription: 27-05-2008
Messages: 60
Site web

Re: code php dans du script js

Merci à toi @KwarK, je teste le code et je te dit wink

Avec plusieurs teste je pense que je vais faire comme tu la dit charger les différents formulaires avec un effet, je voulais pas le faire car j'avais des vérifications, de champs pour les différents formulaires donc cela posé problème, mais je pense avoir trouvé la solution.

Je teste et te dit le code si il fonction en tous cas merci


Orthographes en grèves

Hors ligne

 

Pied de page des forums

Propulsé par PunBB 1.2.23
© Copyright 2005-2006 WordPress France

[ Generated in 0.032 seconds, 14 queries executed ]