[javascript/PHP] aider moi a completer ce cod

Fermé
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 - 8 juin 2006 à 09:11
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 - 12 juin 2006 à 13:14
bonjour a tous

Voila sur ce site j'ai obtenu de l'aide pour un script que j'ai dans une page php

j'ai dans cette page 2 textarea

le but est quand je clic sur un des symboles que j'affiche sur la page il dois s'inserer dans le textarea qui est sélectionné

voici le script

<script type="text/javascript">

document.form_question.champ_actif.value = "ReponseAlternative";
		function changer_champ(nom_du_champ) {
			document.form_question.champ_actif.value = nom_du_champ;
		}
		
		
		function addText(instext) {
			var nom_du_champ_actif = document.form_question.champ_actif.value;
			var nom_du_champ_actif;
			if(nom_du_champ_actif=="ReponseAlternative")
			{
				mess = document.form_question.ReponseAlternative;
			}
			else			{
				mess = document.form_question.Reponse;
			}
					
			//IE support
			if (document.selection) {
				mess.focus();
				sel = document.selection.createRange();
				sel.text = instext;
				document.form_question.focus();
			}
			//MOZILLA/NETSCAPE support
			else if (mess.selectionStart || mess.selectionStart == "0") {
				var startPos = mess.selectionStart;
				var endPos = mess.selectionEnd;
				var chaine = mess.value;
	
				mess.value = chaine.substring(0, startPos) + instext + chaine.substring(endPos, chaine.length);
	
				mess.selectionStart = startPos + instext.length;
				mess.selectionEnd = endPos + instext.length;
				mess.focus();
			} else {
				mess.value += instext;
				mess.focus();
			}
		}
	</script>



voici le code d'un textarea

<textarea rows="5" cols="25" name="ReponseAlternative" onclick="javascript:changer_champ('ReponseAlternative');" onselect="javascript:changer_champ('ReponseAlternative');"><?php echo $Demarche; ?>

12 réponses

antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
8 juin 2006 à 10:17
je rajoute le reste de la question

et voici le code d'insertion d'un symbole

<a href="javascript:void(0);" onclick="javascript:addText('&sup2;');return(false)">&sup2;</a>


les 2 textareas permettent de repondre a des questions stockées dans une base SQL qui sont affichés comme ca

<div align="center"><?echo $Question[$NumQuestion]?></div>

mais ds la base j'ai des questions comme ca

(2x + <input type="text" name="case1" size="5"></input>)&sup2; = <input type="text" name="case2" size="5"></input> + 16x + <input type="text" name="case3" size="5"></input>

cela m'affiche des questions a trous avec les input qui servent a repondre a la question

ce que je veux c adapté le script ci dessus a ces zones de text pour les questions de ce type
0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
9 juin 2006 à 09:19
up
0
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
9 juin 2006 à 15:01
bjr

Je comprends la code Javascript mais pas ce que tu veux faire ...

C'est quoi un QCM de math ?
Ca se présente comment ?

Tu veux mettre quoi dans ton textarea ? D'ailleurs tu parles de 2 textarea : je n'en vois qu'une seule.

Au passage le code
var nom_du_champ_actif; 
dans ta fonction addText est a supprimé .
0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
9 juin 2006 à 17:33
merci

en fait sur ma page php j'affiche une question

selon les questions j'ai 1 ou 2 textarea pour repondre a la question

le probleme c qu'en mathématiques certains symboles ne peuvent pas etre taper au clavier comme par exemple la racine carrée

j'affiche donc ces symboles sur la page et quand l'eleve clic sur le symbole ca affiche le symbole dans la textarea qui est selectionné

mais dans la base certaines questions n'ont pas besoin des textarea pour qu'on y reponde car j'ai mis ds la question des zones de texte pour que la question ressemble a une question a trou

ce que je veux c que quand je clic sur un symbole il s'affiche dans ces zones de textes comme il est deja possible de faire avec les textarea


voila j'espere etre clair
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
9 juin 2006 à 19:31
Re

Voilà j'ai bricolé un truc ca donne :

http://www.nobodysperfect.freesurf.fr/antic80/qcm.htm

Voici le code :

<html>
<head>
<style>

body
{
	font-family : arial;
	font-size : 10pt;
}

input, textarea
{
	font-family : arial;
	font-size : 10pt;
}



</style>


<script type="text/javascript">
<!--

var champ_actif = null;
function onFocus()
{
	champ_actif = this;
}

function init()
{
	// Définit les gestionnaires d'événement pour les champs INPUT
	var elts= document.getElementsByTagName("INPUT");
	
	for (var i=0; i < elts.length; i++)
	{
		// Uniquement pour les champs texte
		if (elts[i].type == "text") elts[i].onfocus=onFocus;	
	}


	// Définit les gestionnaires d'événement pour les champs TEXTAREA
	var elts= document.getElementsByTagName("TEXTAREA");
	
	for (var i=0; i < elts.length; i++)
	{
		elts[i].onfocus=onFocus;	
	}
}

function addText(instext) {
	if (!champ_actif) return;
	//IE support
	if (document.selection) 
	{
		champ_actif.focus();
		sel = document.selection.createRange();
		sel.text = instext;
	}
	//MOZILLA/NETSCAPE support
	else 
	{
		if (champ_actif.selectionStart || champ_actif.selectionStart == "0") 
		{
			var startPos = champ_actif.selectionStart;
			var endPos = champ_actif.selectionEnd;
			var chaine = champ_actif.value;
			champ_actif.value = chaine.substring(0, startPos) + instext + chaine.substring(endPos, chaine.length);
	
			champ_actif.selectionStart = startPos + instext.length;
			champ_actif.selectionEnd = endPos + instext.length;
			champ_actif.focus();
		} 
		else 
		{
			champ_actif.value += instext;
			champ_actif.focus();
		}
	}
}

//-->
</script>

</head>
<body onload="init()">
<input type="button" value="cos()" onclick="addText('cos()')">
<input type="button" value="sin()" onclick="addText('sin()')">
<input type="button" value="()" onclick="addText('()')">
<input type="button" value="^" onclick="addText('^')">
<input type="button" value="&#945;" onclick="addText('&#945;')">
<input type="button" value="&#946;" onclick="addText('&#946;')">
<input type="button" value="&#960;" onclick="addText('&#960;')">
<input type="button" value="&#8730;" onclick="addText('&#8730;')">
<input type="button" value="&#8804;" onclick="addText('&#8804;')">
<input type="button" value="&#8805;" onclick="addText('&#8805;')">
<input type="button" value="&#8734;" onclick="addText('&#8734;')">
<input type="button" value="&#8801;" onclick="addText('&#8801;')">
<input type="button" value="±" onclick="addText('±')">
<input type="button" value="Ø" onclick="addText('Ø')">
<input type="button" value="&#8721;" onclick="addText('&#8721;')">


<br /><br />
Question n°1 : <br />
<input type="text" value="cos" size="10"> + <input type="text" class="essai" value="sin" size="10">=
<input type="text" value="1" size="5">
<input type="button" value="Solution" onclick="alert('cos(&#945;)^2 + sin(&#945;)^2 = 1');">
<br /><br />
Question n°2 : <br />
sin(&#960;/4) = <input type="text" value="" size="10">
<input type="button" value="Solution" onclick="alert('sin(&#960;/4) = &#8730;2/2');">
<br /><br />
Question n°3 : <br />
<textarea rows="5" cols="25"></textarea>
<br /><br />
Question n°4 : <br />
<textarea rows="5" cols="25"></textarea>
</body>
</html>


@+
Php



0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
9 juin 2006 à 19:59
ok apparement ca a l'air de simplifier mon probleme mais j'ai une question

est ce que je peux remplacer

<input type="button" value="^" onclick="addText('^')">

par

<a href="" onclick="addText('^')">^</a>
0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
9 juin 2006 à 20:51
ok apparement ca a l'air de simplifier mon probleme mais j'ai une question

est ce que je peux remplacer

<input type="button" value="^" onclick="addText('^')">

par

<a href="" onclick="addText('^')">^</a>
0
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
9 juin 2006 à 23:07
Presque ...

En fait :

<a href="javascript:addText('^')">^</a>



Qd même préparer des questionnaires pour les élèves la veille des vacances ... LOL
0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
10 juin 2006 à 10:23
merci pour ton aide

et ne t 'inkiete pas c pas pour les vacances

je suis entrain de créer un site pour un ami et il ne sera pas dispo de suite

encore merci a toi
0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
10 juin 2006 à 10:41
une derniere petite chose qui n'a pas de rapport

Travailles tu dans le domaine du Web ??

Si oui je cherche le moyen de bosser dans ce domaine ou de faire une vrai formation ou alors créer une boite mais je suis un peu pommé.

si tu as des infos je suis preneur sinon j'ai tester ton code et ca marche nickel

merci
0
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
12 juin 2006 à 13:09
Bjr,

Ho non, je suis dans l'informatique de gestion, mais je m'intéresse aux développement web (bien obligé : Intranet, site web de le boîte etc ...)
Ca devient incontournable mais c'est aussi très intéressant. En fait je trouve ca amusant, plus l'aspect graphique derrière c'est sympha

Maintenant te dire quels sont les métiers en vogue ...

Pas webmaster en tout cas !

0
antic80 Messages postés 4785 Date d'inscription lundi 30 mai 2005 Statut Contributeur Dernière intervention 9 septembre 2009 1 159
12 juin 2006 à 13:14
ok je te remercie
0