Aller au contenu

Sujets conseillés

Posté (modifié)

Bonjour,

Je souhaite changer la valeur d'une variable lorsque je clique sur un bouton.

C'est sans doute très simple, mais je coince...

J'utilise l'évènement onclick.

Mon code:

$class='hidden';

echo "<input type=\"submit\" onclick=\"$class='visible';\" value=\"Afficher SC\" /> <br/>";

$class vaut initialement 'hidden', et je souhaite que si on clique sur le bouton, la variable passe à visible.

Malheureusement, $class garde la valeur hidden même apres le clic.

J'ai bien le droit de mettre du code directement dans le onclick, je ne suis pas obligé d'appeler une fonction, si?

Le probleme vient sans doute du fait que $class est une varable php (coté serveur) et que le onclick travail coté client.

Est il quand même possible de réaliser cette affectation? Peut etre en utilisant XMLHttpRequest?

Modifié par vidzo
Posté

J'ai essayé de travailler avec XMLHttpRequest, mais je n'ai pas de resultat.

Sans doute une erreur dans ma fonction :

function affecterclass()
{
creerRequete();
var url = 'visujs.php';
/* Envoi de la requête à la page de traitement */
requete.open('POST', url, true);
/* On surveille le changement d'état de la requête qui va passer successivement de 1 à 4 */
requete.onreadystatechange = function()
{
/* Lorsque l'état est à 4 */
if(requete.readyState == 4)
{
/* Si on a un statut à 200 */
if(requete.status == 200)
{
var classjs = 'visible';
}
}
};
requete.send(varclass='+classjs');
}

Et le code du bouton sur lequel j'applique le onclick (visujs.php)

$class='hidden';
?>
<input id="clic" type="submit" onclick="affecterclass();" value=">>>Afficher le mapping complet" /> <br/>
<?php
$class= $_POST['varclass'];

Lorsque je fais un echo du $_POST['varclass'], le resultat est vide.

Ce language n'est vraiment pas intuitif pour moi, je fais mon maximum pour comprendre, mais je suis (trop) rapidement dépassé...

Posté

Bonjour,

Tu confonds 2 choses essentielles concernant la programmation Web : les langages dit "Côté Serveur" et les langages dit "Côté Client"

Le PHP est un langage côté serveur. Tu ne peux donc pas changer la valeur d'une variable de cette manière.

Pour toi, le mieux serait de commencer par le début à savoir :

http://www.webmaster-hub.com/publication/M...mme-en-PHP.html

http://www.siteduzero.com/

Pour ton problème, un peu de javascript (langage côté client) fera l'affaire.

Bon courage, on a tous débuter un jour

Portekoi

Posté

Pas besoin d'utiliser XMLHttpRequest finalement?

J'étais completement à côté de la plaque dans ce que je proposais dans mon précédent post?

Posté

XMLHttpRequest te sert dans le cadre de l'Ajax mais là, s'il s'agit seulement de changer la valeur d'un champ, tu peux le faire en javascript :)

Du genre :

<a href="#" OnClick="document.getElementById('monchp').value ='';">Ouaip</a>

Puis :

<input type="submit" value="1234" id="monchp" />

:)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...