[php/Js][fini] montrer le resultat ds un champs[

bon mon titre n est pas clair ms on peut pas en ecrire des masses:

nouvelle question:
bon je fais evoluer ma question:

j ai un formulaire initial. L utilisateur rempli ses champs pas de pb.Puis le formulaire est traite par une fonction PHP.

Ce que je voudrais c est qu en cas de pb (genre un champs mal ou pas rempli), le formulaire ce reaffiche avec les valeurs rentree par l utilisateur

si j arrive a faire ca mon pb de reference est regle par la meme occasion.

ancienne question:
J ai un formulaire tout bete PHP.
J ai dans ce formulaire un champs pour notre reference a nous (c est pour des articles)

En fait ce que je voudrais c est rajouter un bouton au niveau de ce champs qui puisse donner un resultat de referncement et le mettre dans ce champ (j ai creer un systeme de referencement automatique) apres soit on le garde soit on le change.

Dc en php/html, faire le bouton avec un isset verifier qu on y appui dessus executer ma fonction correspondante (dc celle qui fait le referencement auto) c pas un soucis par contre afficher ensuite le resultat dans le champs que je veux ca me pose bcp plus pb.

C est pour ca que j imagine bien une solution javascript…mais je sais pas comment faire…

Es ce que qq1 peut m aider pour faire ce que je veux ou bien me proposer d autres idees?

merci

rien capté ^^

moi j’ai compris un truc, mais ça me parait tellement évident que je ne sais pas si c’est ça :smiley:

en gros tu veux mettre dans un champ input le résultat d’une opération contenus dans une variable ?


<input type="text" value="<?php echo $variable ?>"

?

hum je reexplique:

j ai un formulaire avec des champs pour ajouter des articles et j ai un bouton a la fin "Ajouter" pour tout mettre dans la base de données.
Ca c est l existant ca marche tres bien.

Dans l’un des champs de mon formulaire on rentre notre reference (genre AY67887HG ce genre la).
Ce que j aimerais rajouter juste a cote de ce champs, c un bouton (genre “Generer”) qui recupere ce qui a ete rentre dans certains champs du meme formulaire, puis via une fonction (deja faite) il me genere automatiquement une reference pour l article considere et cerise sur le gateau, j aimerais que le resulat trouve dans le code, il me le reaffiche dans le champ “Référence” du formulaire.Apres l utilisateur change la reference (considerant que c du nimporte koi, soit il ajoute l article dans la base.

…c plus clair?

si j’ai bien tout compri
ton bouton qui lance ton script de référencement doit submit ton formulaire
dans ton script de référencement, tu dois donc passer toutes les valeurs des ton formulaire pour ensuite rappeller le script du formulaire et le reremplir ave les valeurs

je sais pas exactement ce que fait ton script de référencement, mais si il s’git juste de générer une référence, je sais pas comment, alors ça doit etre faisable en javascipt : sur ton bouton : onclick=‘tafonction js’

oui en gros c bien ca

par contre peut on plus ou moins 1 formulaire sans avoir a tout rappeler et reremplir avec les valeurs?

parce que je n ai qu un champs qui se remplir automatiquement, tous les autres ne bougeront pas

dc en javascript il faudrrait que je fasse sur mon bouton "Generer" une action onclik qui ira pointuer une fonction js qui contiendra mon script php, et apres comment reafficher le resultat de ma fonction dans le champs que je veux?

je pense que ta réponse est la :

http://www.toutjavascript.com/savoir/savoir06_2.php3

c exactement ca

j ai fait mon code voila ce que ca donne:
mon formulaire:


Ajout d'un article:
<table>
<form name="form3" method="post" action="">
<tr><td>Nom Fournisseur:</td><td><input name="nom" type="text" maxlength="200"></td></tr>
<tr><td>Référence Fournisseur:</td><td><input name="ref_fourniss" type="text" maxlength="200"></td></tr>
<tr><td>Marque:</td><td><input name="marque" type="text" maxlength="200"></td></tr>
<tr><td>Modèle:</td><td><input name="modele" type="text" maxlength="200"></td></tr>
<tr><td>Désignation:</td><td><input name="designation" type="text" maxlength="200"></td></tr>
<tr><td>Type:</td><td><input name="type" type="text" maxlength="200"></td></tr>
<tr><td>Prix vente:</td><td><input name="prix" type="text" maxlength="200"></td></tr>
<tr><td>Prix achat:</td><td><input name="prix_ach" type="text" maxlength="200"></td></tr>
<tr><td>Quantité:</td><td><input name="quantite" type="text" maxlength="200" value="0"></td></tr>
<tr><td>Référence pilat:</td><td><input name="ref" type="text" maxlength="200"><INPUT type="button" value="Générer" onClick="referencement.php?marque=$_POST['marque']&type=$_POST['type']&etat=$_POST['etat']&designation=$_POST['designation']"></td></tr>
<tr><td>Neuf:</td><td><select name="etat"><option>Oui</option><option>Non</option></select></td></tr>
<tr><td><input type="submit" name="ajout" value="Ajouter"></td></tr>
</form>
</table>

et le fichier referencement.php (morceau choisi):


<?php
include 'connexion.php';

$marque_article=strtoupper($_GET['marque']);
$designation=str_replace(" ","",strtoupper($_GET['designation']));
$type_article=strtoupper($_GET['type']);
$etat=strtoupper($_GET['etat']);
$marque=substr($marque_article,0,2);
$type_arti=substr($type_article,0,3);
if($etat!='Non')
  $eta='N';
  	else
    $eta='O';
.
.
.
.
        $reference_pilat_finale=$reference_pilat;
        }
	}
?>
<script language="javascript">
this.form.ref.value=<?php print $reference_pilat_finale;?>
</script>

et ben ca fait RIEN qd j appui sur le bouton "Générer"

pourtant j ai pas l impression d avoir oublier qqch…

Je ne suis pas expert, mais je ne pense pas que tu puisse attribuer du php à l’evenement “onclik”, puisque cette évenement est géré du coté client. Hors le php se fait coté Serveur…

Je pense que tu ne peux mettre que du javascript:


<INPUT type="button" value="Générer" onClick=FonctionJavascript(param1,param2..)>

Il faut ensuite que tu fasses ta fonction de génération d’un numéro de référencement en javascript.
Dans cette fonction, admetton que la variable qui stock ce numero s’appelle VarRef, Il n’y a qu’a rajouer cette ligne à la fin de ta fonction javascript:


function FonctionJavascript(param1,param2)
{
//code de génération de ton code référence
.
.
.

//ecriture de ce code dans le champ "ref"
document.forms["form3].elements["ref"].value=VarRef;
}

Comme ceci, la page ne se recharge pas, et tu ne perd pas les données déja saisies :slight_smile:

dc voila ce que j ai fait:
<tr><td>Référence pilat:</td><td><input name="ref" type="text" maxlength="200"><INPUT type="button" value="Générer" onClick="fonction(marque,type,etat,designation)"></td></tr>

pour mon formulaire et…


<script language="javascript">
function fonction(marque,type,etat,designation)
{
</script>
<?php
include '../connexion.php';

$marque_article=strtoupper(?><script language="javascript">marque</script><?php );
$designation=str_replace(" ","",strtoupper(?><script language="javascript">designation</script><?php ));
$type_article=strtoupper(?><script language="javascript">type</script><?php );
$etat=strtoupper(?><script language="javascript">etat</script><?php );
.
.
.
        $reference_pilat_finale=$reference_pilat;
        }
?>
<script language="javascript">
document.forms["form3"].elements["ref"].value=<?php print $reference_pilat_finale;?>;
}
</script>

mais bien sur ca ne marche au niveau de mo passage de variable js a php ds la fonction js…

pourtant je dois faire un truc comme ca car je ne veux pas tout developper sous javascript alors que j ai besoin de bdd

Oula, nan, ne melange surtout pas le Javascript et le php lol!

Je n’ai pas bien compris; Ta fonction de génération du numéro est faite en php?
Si c’est le cas, tu te complique!

Comment doit s’organiser ton code:


<HTML>
<HEAD
<sript langage="javascript">

function fonction(reff)
{
document.forms["form3"].elements["ref"].value=ref;
}
.
.
.
</script>
</HEAD>
<BODY>
.
.

<?php
/* la tu traite ton php: Tu fait ton algo tu appelle ta fonction qui genere ta réference*/

 $reference=LaFonctionQuiGenreLaReference();
    . 
    .
echo'
<INPUT type="button"value="Générer"onClick="fonction('.$reference'.)">
?>
.
.
.
</BODY>
<HTML>

heu petite question:

ca ne pose pas de pb que mon algo est oblige de se ne mettre APRES le <INPUT type="button"value="Générer"onClick=“fonction(’.$reference’.)”>?

parce que j ai forcement besoin de recuperer de mon formulaire initial: la marque, le type, la designation et l’etat pour creer cette reference automatiquement…

Bien oui car ton $reference ne sera pas initialisé.

hum dc pas de solution…

Tu sais qu’avec XML-HTTP tu peux, via javascript, lire un fichier de données XML disponible quelque part sur ton serveur pour faire de l’affichage relativement dynamique par rapport à javascript?

Ca doit être Kisscool qui avait posté un truc dans ce genre là.

(je dois avouer que j’ai pas saisi du tout ton problème, j’ai juste compris qu’il s’agissait de taper une référence, et de reprendre les données de la référence via un bouton?)

[edt] et même, sur un bouton submit, tu peux mettre l’attribut name, et quand tu cliques sur le bouton, ça définit dans les POST/GET $_POST[‘nom_bouton’]. Tu peux facilement raffraïchir ta page…

bon je fais evoluer ma question:

j ai un formulaire initial. L utilisateur rempli ses champs pas de pb.Puis le formulaire est traite par une fonction PHP.

Ce que je voudrais c est qu en cas de pb (genre un champs mal ou pas rempli), le formulaire ce reaffiche avec les valeurs rentree par l utilisateur

si j arrive a faire ca mon pb de reference est regle par la meme occasion.

Tout ce que j arrive a faire a l heure actuelle, c est mon formulaire initial, la fonction qui traite, et en cas de pb soit je dis juste qu il y a un pb et l utilisateur a tout a retaper, soit j afficher un autre formulaire sous le formulaire initial pour qu il puisse corriger…dc en gros rien de bien

merci d avance

Tu n’as qu’a faire le traitement des champs en javascript. Au moins, toutes les données saisies ne seront pas effacées :slight_smile:

qd tu dis le traitement des champs…cad?

verifier que leur contenu est comme je veux lorsqu on appui sur le bouton de validation?

es t il possible d envoyer le contenu "en temps reel" d un champs sur un lien hypertexte?

genre:
j ai un formulaire avec un champ et un bouton et un lien qui me permet d aller faire une recherche qqconque par ex sur une base de données.
Et le lien faire une recherche sur ce que va mettre l utilisateur dans le champs.

Donc, des que l utilisateur va mettre une lettre dans le champ prevu a cet effet, le lien lui va se mettre automatiquement à jour genre http://recherche.php?nom="contenu_du_champ", sans avoir a appuyer sur un bouton?

j ai ete clair…?