fonction javascript et php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : fonction javascript et php

par zeus » 14 juin 2005, 11:39

Un petit [RESOLU] :?:

par donny » 14 juin 2005, 11:38

nan j ai plus de probleme
mais c est clair que defois j oubli la distinction client serveur
ou je ne la vois pas
Merci

par zeus » 14 juin 2005, 11:21

Alors là, c'est bon, ca explique pourquoi ça fonctionne

Et tu as encore un problème ? de quelle sorte ? qu'est-ce que tu voudrais ?

par donny » 14 juin 2005, 11:00

ouai
j ai sa
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" name="rech" method="post"> 

par zeus » 14 juin 2005, 10:55

Dans le code que tu m'a donné, tu vas effacer tes variables de sessions uniquement si lors du chargement de la page tu as la variable POST["zzz"] qui existe !!!

Mais le fait d'appuyer sur le bouton ne vas pas enclencher le passage par le test PHP

si tu veut faire ce que tu attends, il te faut un truc du genre
<form method="POST" action="page_actuelle.php">
  <input type="submit" name="zz" value="zz" >
<? if(isset($_POST['zz']))
{
unset($_SESSION['fam']);
unset($_SESSION['marque']);
echo "<script>javascript:zero();</script>";
}
echo "<h1>".$_SESSION['fam']."</h1>";
echo "<h1>".$_SESSION['marque']."</h1>";
?>
</form>
Mais pour exécuter ton code PHP à chaque fois que tu clique sur le bouton, tu es OBLIGE de repasser sur le serveur vu que c'est là que s'exécute le PHP avant de réafficher ta page

par donny » 14 juin 2005, 10:46

J ai fait cela et sa marche.
Je me pai pas ta tete je veux tout faire sur la meme page et pas passer par une page intermediare.
Sa fonctionne car j execute d abord le php sur le serveur et ensuite le javascript sur le client c est bien cela ?
<input type="submit" name="zz" value="zz" > 
<? if(isset($_POST['zz'])) 
{ 
unset($_SESSION['fam']); 
unset($_SESSION['marque']); 
echo "<script>javascript:zero();</script>";
} 
echo "<h1>".$_SESSION['fam']."</h1>"; 
echo "<h1>".$_SESSION['marque']."</h1>"; 
?> 

par zeus » 14 juin 2005, 10:39

Franchement donny, je crois que tu te paye ma tête

Je te donne des voies d'approndissement et toi, tu fait comme si je disais rien

Dernier avertissement

Est-ce que le code que tu me donnes est dans la même page ? quel est le code de ta fonction JS ?

C'est pas normal que ça fonctionne

par donny » 14 juin 2005, 10:34

j ai fait cela
<input type="submit" name="zz" value="zz" OnClick="javascript:zero()"> 
<? if(isset($_POST['zz']))
{ 
unset($_SESSION['fam']);
unset($_SESSION['marque']);
}
echo "<h1>".$_SESSION['fam']."</h1>";
echo "<h1>".$_SESSION['marque']."</h1>";
?>
mais le truc que je pige pas, c est qu il faut que je clique 2 fois sur le bouton pour que sa marche.
Quand je clique une fois sa efface la variable de session et la 2eme fois sa selectionne le 1ere element de la liste et je pige pas trop le pourquoi du comment ?

par zeus » 14 juin 2005, 10:30

Je crois que tu n'as pas compris ce que j'essaye de te dire.

Dans ta feuille, ton bouton doit rediriger vers une AUTRE page qui elle, va effacer tes variables de sessions.

Le test sur le bouton GET est fait AVANT l'affichage de la page et UNIQUEMENT avant.

C'est donc normal que quand tu clique sur le bouton qui ne fait que appeller une fonction JS, le code PHP ne soit pas interpreté

par zeus » 14 juin 2005, 10:08

Comme tu veux

Mais ce qu'il faut bien que tu gardes à l'esprit qu'il va falloir chargé un script PHP pour effacer tes variables de sessions

par donny » 14 juin 2005, 09:56

Quand le Javascript est exécuté, tu n'est plus sur le serveur et tu ne peux plus agir sur des variables PHP sans repasser par le serveur
ok
donc je dois faire un bouton pour vider les variable de sessions et un autre pour selectionner le premiere index de ma liste

par tanky » 14 juin 2005, 09:36

comme tu le dis, c'est du javascript donc t es pas dans le bon forum ... sinon la solution c'est le remote scripting. cf. http://developer.apple.com/internet/web ... frame.html

par zeus » 14 juin 2005, 09:24

Encore une fois,

PHP est un langage serveur
Javascript est un langage client

Quand le Javascript est exécuté, tu n'est plus sur le serveur et tu ne peux plus agir sur des variables PHP sans repasser par le serveur

Si tu veux effacer des variables de sessions, en JS, tu doit réexécuter un script PHP qui va effacer tes variables de sessions

fonction javascript et php

par donny » 14 juin 2005, 08:30

salut,

J'ai un formulaire avec listes deroulante et je voudrais si il est possible de faire une fonction javascript qui au click sur un bouton selectionne la premiere valeur de la liste mais aussi vide mes variable de sessions ???


Merci