Des doutes sur la qualité d'encodage de mon site

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Pecose
Arias
Messages : 15
Inscription : 04 févr. 2013, 17:59

Des doutes sur la qualité d'encodage de mon site

Message par Pecose »

Bonjour à tous.
J'étudie le développement web depuis peut et je n'ai pas trouver de tutoriel relatif aux questions qui me bloque aujourd'hui.
Voila mon code:

<?php session_start(); include_once('function.php'); ?>
<div id="id_div"></div>
<script>
var var_js = document.getElementById("id_div").innerHTML = "<?php select_bdd('ID_', 'compte'); echo $_SESSION['ID_compte']; ?>";
// select_bdd() est une fonction qui ce trouve dans function.php et qui récupére une valeur en bdd pour l'attribuer à une variable $_SESSION[]
</script>

Et voila ma question:
-Es-que cette façon d'encoder est conventionnelle, et surtout, est elle asynchrone?

Je vous remercie de votre aide.
Dernière modification par Pecose le 04 févr. 2013, 19:19, modifié 5 fois.
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Des doutes sur la qualité d'encodage de mon site

Message par calimo »

Hello,

Quel est le but de ce morceau de code ?
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:18.0) Gecko/20100101 Firefox/18.0
Pecose
Arias
Messages : 15
Inscription : 04 févr. 2013, 17:59

Re: Des doutes sur la qualité d'encodage de mon site

Message par Pecose »

Le but est tout simplement d'afficher les valeurs tirées de ma base de donnée sur ma page, sans la réactualiser complètement.
Ecrit de cette manière, il ne sert a rien. Ce qui est important dans ce code, c'est l'écriture de PHP grace au javascript pour réactualiser une parcelle de page avec une valeur récupérer en SQL.
Suis-je claire?
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Des doutes sur la qualité d'encodage de mon site

Message par calimo »

C'est bien ce que je pensais, sans en être totalement sûr. Maintenant c'est clair.

Tu dois te tourner vers XMLHttpRequest. Car dans le code que tu donnes, le PHP est interprété au moment de la génération de la page côté serveur. PHP n'a aucun moyen se savoir qu'il s'agit de code javascript, et de toutes façons le navigateur et son interpréteur javascript (côté client) seraientt bien en peine de faire quoi que ce soit avec du code PHP (interprété côté serveur).

Je te recommande d'utiliser une librairie comme jQuery pour te simplifier la vie. À noter que tu devras faire appel à une autre page PHP pour le rafraichissement. :wink:
Votre Navigateur : Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:18.0) Gecko/20100101 Firefox/18.0
Pecose
Arias
Messages : 15
Inscription : 04 févr. 2013, 17:59

Re: Des doutes sur la qualité d'encodage de mon site

Message par Pecose »

Ah oui, exacte, désolé. Ce n'est peut-être pas clair.

Le code prend tout sont sens lorsque:
var var_js = document.getElementById("id_div").innerHTML = "<?php select_bdd('ID_', 'compte'); echo $_SESSION['ID_compte']; ?>";
ce retrouve dans une function() appeller par:
<input type="submit" onClick="function()" />

Et dans ce cas, il me semble que le php n'est pas interprété au moment de la generation de la page puisqu'il n'est interpreté qu'au moment ou l'on clic sur le bouton...
Le code marche parfaitement cher moi, et l'intérêt et aussi d'éviter XMLHttpRequest que je trouve tres lourd a utiliser.
Si je me trompe je veux bien me remettre en question mais je ne pence pas ce serais sur la fiabilité du code présenté.
Votre Navigateur : Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Des doutes sur la qualité d'encodage de mon site

Message par calimo »

Pecose a écrit :Et dans ce cas, il me semble que le php n'est pas interprété au moment de la generation de la page puisqu'il n'est interpreté qu'au moment ou l'on clic sur le bouton...
Tu en es sûr ? Réfléchis bien à ce qui est réellement interprété lorsque tu cliques sur le bouton...
Je répète, le navigateur n'a strictement aucune idée ce qu'est le PHP, il est totalement incapable d'en faire quoi que ce soit, seul le serveur peut en faire quelque chose (c'est à dire le convertir en quelque chose que le navigateur sait traiter, comme du HTML ou du javascript).
Le meilleur moyen de t'en convaincre, c'est de regarder le code source de la page (Ctrl+U) :wink:
Pecose a écrit :Le code marche parfaitement cher moi, et l'intérêt et aussi d'éviter XMLHttpRequest que je trouve tres lourd a utiliser.
D'où ma suggestion de jQuery qui rend cela bien plus simple.
Mais probablement qu'avec un exemple aussi simple, tu n'as pas besoin d'asynchronisme. Bien souvent, ça marche très bien lorsque le code est interprété au chargement de la page. Ce n'est que dans des cas bien précis que tu dois faire une requête qui n'était pas prévisible initialement.
Pecose a écrit :Si je me trompe je veux bien me remettre en question mais je ne pence pas ce serais sur la fiabilité du code présenté.
C'est toi qui vois : c'est ton site après tout :P
Asumbaa
Tyrannosaurus Rex
Messages : 2411
Inscription : 08 déc. 2004, 20:07

Re: Des doutes sur la qualité d'encodage de mon site

Message par Asumbaa »

Salut,

Pour compléter ce qu'explique Calimo que je plussoie :

Ton code PHP est interprété au moment de l'appel à la page. C'est le principe d'un langage côté serveur ;-) dans ton cas, le bout de code génère des instructions Javascript qui elles, seront appelées au moment de la validation du formulaire. Mais en aucun cas le code PHP "attend" la validation du formulaire pour s'exécuter.
Votre Navigateur : Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0
Pecose
Arias
Messages : 15
Inscription : 04 févr. 2013, 17:59

Re: Des doutes sur la qualité d'encodage de mon site

Message par Pecose »

A défaut de parler de fiabilité, on peut parler de limite.
-J'ai testé une function() qui incremente une $_SESSION['i'], elle ne s'incremente qu'a l'actualisation de la page.
-J'ai testé une concatenation de var a + var b en javascript contenant chacune une moitié de code php, le serveur est incapable de le comprendre.

Tout ca pour dire que je comprends mieux le fonctionnement du javascript grace a vous.
Merci beaucoup de votre aide.
Votre Navigateur : Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités