Est-ce possible ?!

Signaler
Messages postés
17
Date d'inscription
vendredi 1 octobre 2004
Statut
Membre
Dernière intervention
30 octobre 2007
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Bonsoir à tous !

Je me posais la question de savoir si ceci était possible, ou du moins si j'etais sur la bonne voix pour pouvoir recuperer une variable JS dans une PHP. Voici le code :

function test()
{
    echo'<script language="Javascript">
             <!--
               
                  '.$var.'= document.GetElementByID["champs1[1]"].value;   
         // -->
              </script>';
    echo $var; 
}

Merci d'avance!

8 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
c'est impossible, demande toi ou sont executes php et javascript... quand sont-ils executes...
Messages postés
17
Date d'inscription
vendredi 1 octobre 2004
Statut
Membre
Dernière intervention
30 octobre 2007

Effectivement après quelques recherches ça m'a pas l'air possible.

J'ai essayé de trouver une alternative

Function JS :

function returnvalue(champs)
{   
            produit=document.getElementById(champs).value;
            document.write(produit);
}

Function php

function test($var)
{
    include ('include/config.php');
    mysql_connect($HOST, $LOGIN, $PASSWORD) or die("Connection           interrompue");
    mysql_select_db($DATABASE);
         
    echo $var;
    $query ="SELECT DESI FROM PIECE WHERE PIECE ='".$var."'";
    echo $query;
    $result = mysql_query($query) or die (mysql_error());

    echo mysql_num_rows($result);
   

}

Lorsque j'appelle ma fonction php :

$value = test ('<script type="text/javascript">returnvalue("champs1[]");</script>');

dans la fonction test(), le echo $var affiche bien la valeur retourné par la fonction JS. Lorsque j'affiche le contenu de la requete et qu eje la test dans phpmyadmin, la requete, mais lors du fetch array dans la fonction php, il ne me retourne aucun enregistrement. Alors que quand je met la requete en dur (sans passé par $var) ça marche,fetch num ow =1, alors que quand je l'affiche avec un echo elle a exactement la meme syntaxe que quand je l'affiche avec la variable $var. Sauf que le fetch num rows me retourne 0 .

J'ai surement une erreur de débutant mais la je ne comprend pas !! merci de m'apporter votre lumiere!
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
....

php est execute par quel programme ???

javascript est execute par quel programme ???

php est execute sur quelle machine ???

javascript est execute sur quelle machine ???

sont-ils executes en meme temps ?

ca devrait repondre au pourquoi c'est impossible...

quand tu auras repondu a ces questions, renseigne toi sur ajax
Messages postés
17
Date d'inscription
vendredi 1 octobre 2004
Statut
Membre
Dernière intervention
30 octobre 2007

Meric de ta réponse,
effectivement Il n'y a que ajax poru repondre à mon besoin sauf que je n'ai vmt pas le temps d'approfondir mes connaissances sur tout dans un nouveau domaine comme AJAX.
Après mure reflection, j'ai décidé (si possible)

de faire ma requete, mettre le resultat dans un tableau et d'envoyé le tableau dans une fonction javascript
qui fera la concordance entre le champs 1 et le champs 2 et me le retournera

Dites moi si je suis tjs dans la betise, ou s'il y a un soupsons de piste !!

Je teste cette aprem' et te tiens au courant.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,

tu ne peux pas utiliser du javascript dans du php car le php s'exécute avant le javascript comme te l'a dit Coucou.
Mais tu peux utiliser du php dans du javascript, du coup. MAIS...quand tu fais ça :
<?php
$maVar = 'toto';
echho '<script type="text/javascript">functionJS(\''.$maVar.'\');</script>';
?>
ce qu'il y a dans la source de ta page après exécution de cette dernière, c'est ça :
<script type="text/javascript">functionJS('toto');</script>
Parce que PHP étant exécuté avant, ta variable php est remplacée par sa valeur TELLE qu'elle le serait si elle était affichée avec un echo.

Alors si tu passes un tableau :
<?php

$aMonTableau = array ('toto', 'tata);

echho '<script type="text/javascript">functionJS('.$maVar.');</script>';

?>

ce qu'il y a dans la source de ta page après exécution de cette dernière, c'est ça :

<script type="text/javascript">functionJS(Array);</script>
Ce qui ne va pas faire tes affaires...

Ceci dit, demande-toi quand même si c'est vraiment utile ? php travaille bien plus efficacement sur les tableaux que javascript.
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
"php travaille bien plus efficacement sur les tableaux que javascript."
=> Oo a quel sujet ??

certains disent que meme si l'accessibilite n'est pas la meme, afficher plein de choses en javascript decharge le server et permet un gain de bande passante (tu mets les scripts en cache, pas l'affichage de certaines donneees)
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
=> Oo a quel sujet ??
=> array_map, array_filter, array_walk, array_keys, array_key_exists, array_search, etc...sans compter ArrayIterator et cie.
php est largement supérieur à beaucoup de langage pour le traitement des tableaux.
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
j'ajoute ca a ma todo, je me renseignerais et ajouterais ca a l'object Array :)

ArrayIterator, euh... Array etant une classe, je ne suis pas sur de ce que tu avances... faudrait tester array_search, array_key_exists ca doit exister...