Peut-on lire/écrire un document.form.input.value en PHP comme on le fait en JS ?

Petit nouveau ! | 2 Messages

08 févr. 2009, 16:55

Ca fait 2 jours que je me creuse la tête... HELP !

Dans un formulaire HTML, je place un input text 'acteur' et une liste déroulante 'films'.

Où est-ce que mon code php doit être placé pour qu'ils puissent lire le contenu du champs acteur, faire la requête SQL et mettre à jour la liste déroulante des films ? Si possible je souhaite me passer d'ajax et de rechargement de la page... -MERCI-

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

08 févr. 2009, 17:15

Si possible je souhaite me passer d'ajax et de rechargement de la page... -MERCI-
Tu peux te passer de l'un ou de l'autre, oui.
Des deux à la fois, je ne vois pas comment... :-k

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

08 févr. 2009, 18:04

Bah ça peut se faire en javascript exclusivement, en chargeant dès l'ouverture de la page toutes les données dans des tableaux js et en les parcourant à chaque fois que l'internaute tape une lettre ou clique sur un bouton... après faut juste espérer que l'utilisateur a une bonne machine et toi un nombre d'éléments pas trop conséquente :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

ViPHP
ViPHP | 1996 Messages

08 févr. 2009, 20:15

Si besoin de requète sql = besoin d'un serveur donc Ajax ou formulaire.
Sinon tu peux côté client (en javascript) mais tu dois mettre toute les valeurs côté client.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 2 Messages

09 févr. 2009, 22:09

OK pour l'ajax, j'ai essayé mais ça prend pas ;-)
Voici mon html :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>

<script type="text/javascript">



function listefilms()
{
var xhr_object = null;   
        
if(window.XMLHttpRequest) // Firefox   
       xhr_object = new XMLHttpRequest();   
else if(window.ActiveXObject) // Internet Explorer   
       xhr_object = new ActiveXObject("Microsoft.XMLHTTP");   
else { // XMLHttpRequest non supporté par le navigateur   
       alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");   
return;   

xhr_object.open("POST", "films.php", true);
xhr_object.onreadystatechange = function()
	{
	if(xhr_object.readyState == 4)
	eval(xhr_object.responseText);
   	}

xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

var data = "acteur="+document.forms['form_act'].acteur.value+"&form=form_act&select=films";
xhr_object.send(data);

}

</script>
</HEAD>

<BODY>
<form name="form_act" id="form_act" action="" method="" onsubmit="return false;">

<fieldset><legend>Filmo</legend>
Nom de l'acteur : <INPUT TYPE=TEXT NAME="acteur" VALUE="Nom" OnClick="listefilms()">
Films : <select name="films" id="films"></select>
</fieldset>
</form>

</BODY>
</HTML>
est-ce que tout est ok pour vous ? que dois-je mettre dans le php pour qu'il déroule les films dans mon select ?

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

09 févr. 2009, 22:18

Modération :
mattbag, afin d'améliorer la lisibilité de ton message,
pense à utiliser les balises [code] ou [php] (selon le langage utilisé).

Elles sont disponibles au-dessus de la zone de saisie de ton message
lorsque tu postes un nouveau message.

Des indications sont disponibles sur la manière de mettre en forme vos messages dans la FAQ