Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Transmission chaine de caracteres Javas cript->PHP

16 réponses
Avatar
Zarak
Bonjour,

J'ai un problème que je vais essayer de résumer simplement : je voudrais
transmettre une chaine de caractère depuis Javascript vers PHP, chaine
qui sera ensuite traitée dans une requête SQL.

La fonction Javascript récupère un évenement clavier, qui est transmis -
avec succès - vers une fonction php "Rechercher" :

/* Fonction Javascript */
function Update(frappe)
{
document.getElementById("textfield").value = "<?php Rechercher('"+frappe+"'); ?>";
}

/* Fonction PHP */
function Rechercher($text)
{
$result = RequeteSQL("SELECT nom FROM table WHERE nom LIKE '$text%' ORDER BY nom");
$ligne = mysql_fetch_array($result);
echo $ligne[0];
}

A partir de là, un truc bizarre se produit : la chaîne est bien transmise, un "echo" peut
le prouver, mais la requête SQL ne renvoit rien. Si je rajoute par exemple au début de la
fonction PHP $text = "V", ça va marcher, la requête SQL va me renvoyer le premier enregistrement
commençant par "V". Si ce même "V" provient du Javascript, 'a marche pu.

Qu'est-ce qui ne fonctionne pas entre Javascript, MySQL et l'appel PHP ? N'y a-t-il pas une
histoire de formatage de chaîne de caractère ou qqch dans le genre ?

Merci.

6 réponses

1 2
Avatar
Mickaël Wolff
Le 07/05/2010 02:51, SAM a écrit :

et ils arrivent à servir instantanément les 900 millions d'internautes
qui tapotent en même temps ?



On n'aurait plus de Google depuis longtemps si ce n'était pas le cas.
Le plus impressionnant reste que les serveurs sont capable de fournir en
temps constant, malgré la charge.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Avatar
Zarak
Olivier Miakinen a écrit :
3) C'est alors que JavaScript peut entrer dans la danse, dans le
navigateur, et récupérer d'éventuels événements clavier. Mais comme dit
ci-dessus PHP n'existe plus ; l'interpréteur PHP sur le serveur a fini
de travailler depuis longtemps, et ne recommencera que pour une *autre*
page web.

La fonction Javascript récupère un évenement clavier, qui est transmis -
avec succès - vers une fonction php "Rechercher" :



Non, tu te trompes. L'événement clavier ne *peut* pas être transmis avec
succès à PHP car il n'y a plus de PHP.

Cordialement,



Ok, j'ai résolu mon problème, effectivement c'était très crade (lol), juste
le temps que je m'intéresse à Ajax, qui correspond exactement à ce que je
cherchais.

'a r'commençerais pu :)
Avatar
Denis Beauregard
Le Fri, 07 May 2010 10:25:01 +0200, Mickaël Wolff
écrivait dans
fr.comp.infosystemes.www.auteurs:

Le 07/05/2010 02:51, SAM a écrit :

et ils arrivent à servir instantanément les 900 millions d'internautes
qui tapotent en même temps ?



On n'aurait plus de Google depuis longtemps si ce n'était pas le cas.
Le plus impressionnant reste que les serveurs sont capable de fournir en
temps constant, malgré la charge.



C'est pourquoi je pense que ce n'est pas codé en PHP...

ÀMHA, plutôt en C++ ou du moins, un langage compilé et non interprété.


Denis
Avatar
Bruno Desthuilliers
Denis Beauregard a écrit :
Le Fri, 07 May 2010 10:25:01 +0200, Mickaël Wolff
écrivait dans
fr.comp.infosystemes.www.auteurs:

Le 07/05/2010 02:51, SAM a écrit :

et ils arrivent à servir instantanément les 900 millions d'internautes
qui tapotent en même temps ?


On n'aurait plus de Google depuis longtemps si ce n'était pas le cas.
Le plus impressionnant reste que les serveurs sont capable de fournir en
temps constant, malgré la charge.



C'est pourquoi je pense que ce n'est pas codé en PHP...

ÀMHA, plutôt en C++ ou du moins, un langage compilé et non interprété.



Au niveau langages, il y a un peu de tout chez Google - js, java,
Python, C etc. Surtout et essentiellement, ils ont développé une
architecture - inspirée des langages fonctionnels et particulièrement de
Erlang - permettant de distribuer/paralléliser "massivement" traitements
et données sur des dizaines de milliers de PC.
Avatar
Pascal
Bruno Desthuilliers a écrit :
Pascal a écrit :
je faisais de la
maïeutique avec mes questions.



Pascal, ce que tu fais chez toi ne regarde que toi, mais ici c'est un
neswgroup sérieux...



Si tu le dis ! ;-)
Avatar
Mickaël Wolff
Le 07/05/2010 12:13, Denis Beauregard a écrit :
C'est pourquoi je pense que ce n'est pas codé en PHP...
ÀMHA, plutôt en C++ ou du moins, un langage compilé et non interprété.



Je n'aime pas cette distinction entre langages interprétés et
compilé, puisque c'est avant tout une question d'implémentation.

Ceci dit, PHP est compilé. Le PHP de http://php.net/ est compilé en
bytecode. Le PHP de http://facebook.com/ est compilé en C++.

--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
1 2