begin process at 2012 05 29 03:22:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Divers

 > 

envoyer un champ input text via ajax pour tchat


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

envoyer un champ input text via ajax pour tchat

samedi 11 avril 2009 à 22:53:49 | envoyer un champ input text via ajax pour tchat

iznobe2601

ça fait plusieurs jours que je galere avec ce truc là qui je suis sur est simple pour vous

donc pour un tchat simple live en ajax , j ' ai un champ input text etc que je veux envoyer dans la div qui se met à jour via ajax en post .

petite precison je ne connais absolument rien en java scrip ajax et aute ( seulement un peu de php mysql )

pour cela j ' ai recuperer le script sur la page  http://www.javascriptfr.com/codes/CHARGER-PAGE-PHP-OU-HTML-DANS-DIV_37447.aspx.           qui me parait etre approrié .


par contre soit le script ne fonctionne pas correctement soit je fais n ' importe quoi evidement , je pencherai plutot pour la 2eme solution

en fait en apllicant ce qui est indiqué dans les commentaires du dit script je ne reçois pas ma variable du input mais ce ui designe la variable j ' ai essayé des centaines de choses , mais rien à faire par contre je sais que je suis tout pret , mais là vraiment j ' en peux plus , pourtant je suis pas du style a abandonné ....

un peu de code pour vous donner une idée :

voilà le form :

<form id="form" name="form" method='POST' action="" >
                                    <input type='text' name='shbox_text' size='95'>
                                    <input type='hidden' name='sent' value='yes'>
                                    <input  type='submit' name='submit' style="width:115"  value='Envoi !' >
                                                                       
                                <a href="ViewContent('page', 'page.php', 'POST', 'shbox_text=+content1+&sent=yes&submit=+content3+');" >envoyer</a>
</form>

ensuite ma div s ' actualise et  en voici le code :

if($_POST["sent"]=="yes") {
$message=trim($_POST["shbox_text"]);

echo $message;

}
else echo "no message";
jusque là le div etc tout est nickel chrome , je me suis deja epaté d ' y etre arrivé .

le probleme c ' est que au lieu de m ' afficher $message qui contient le texte tapé dans le input , ça m ' affiche content1

j ' ai vus dans le forum je ne sais plus ou à propos de ce script qu ' il fallait en fait syntaxer les variables avec des " donc j 'ai aussi essayer :
<a href="javascript:ViewContent('page', 'page.php', 'POST', 'shbox_text="+content1+"&sent="yes"&submit="+content3+"');" >envoyer</a>

mais resultat similaire pourtant je suis certain que le reste fonctionne le div s ' actualiser mais le passage de variable ne se fait pas .

je suis vraiment archi royalement null et j ' ai aucune notion de javascript ou ajax , j ' ai seulement plein de bonne volonté mais çela ne suffit pas toujours .

si une personne bienveillante pouvait m ' aider , ça serait vraiment super sympa .

merci d ' avance pour votre aide .

@ +++



dimanche 12 avril 2009 à 08:51:53 | Re : envoyer un champ input text via ajax pour tchat

Bul3

Membre Club


Bonjour,
ben dèjà :
...'shbox_text='+content1+'&sent=yes&submit='+content3+');" ...
sinon, c'est le texte contentl qui est envoyé, pas le contenu

pas regardé le reste

>>j ' ai aucune notion de javascript ou ajax
il serait temps de t'y mettre si tu veux utiliser !
( ajax c'est du javascript !! 10 lignes maxi )

Cordialement [mon Site] [M'écrire] Bul
dimanche 12 avril 2009 à 11:09:09 | Re : envoyer un champ input text via ajax pour tchat

iznobe2601

bonjour bul3

je viens de tester ce que tu m ' as dit mais alors là plus rien ne marche si je met les  " ' " .

je me demande si il n ' y aurait pas un probleme dans la fonction voir lien ci dessus 
dimanche 12 avril 2009 à 11:47:38 | Re : envoyer un champ input text via ajax pour tchat

iznobe2601

ps oui je sais que AJAX  ' c 'est du javascript

c ' est ce que je fais ,  je m ' y mets au debut c ' est pas evident .

la syntaxe decrite dans l ' utilisation de la fonction est bonne avec du texte mais pas avec les variables !!

serait il possible d ' avoir un exemple complet et fonctionnel quelque part ???
dimanche 12 avril 2009 à 13:30:45 | Re : envoyer un champ input text via ajax pour tchat

Bul3

Membre Club

>>plus rien ne marche si je met les  " ' " .
erreur de syntaxe probablement
mais si tu mets 'shbox_text="+content1+"&sen
ça ne peut pas marcher
'shbox_text='+content1+'&sen...
pas de raisons que cela ne fonctionne pas ( sauf la fonction appelée qu'on n'a pas, mais bon... )
>>avoir un exemple complet et fonctionnel
ce n'est pas un problème ajax !
c'est un problème de syntaxe en javascript !

d'ailleurs tu dois avoir une erreur de signalée
NavigateursQuelques Explications

Chrome
contrôler page actuelle / Options pour développeurs
/ Console Javascript

FireFox
Outils / Console d'erreurs
et mieux : télécharger FireBug

Internet
Explorer
activer le deboggage : Outils/options Internet/Avancés
dans la liste, sous "Navigation" : décocher
o Afficher une notification de chaque erreur de script
o Désactiver le débogage de Scripts (Internet Explorer)
et mieux (pour IE < 8) : télécharger le Debogger IE
voir aussi : DebugBar et Companion JS

K-Meleon
Outils / Console d'erreurs

Opera
Outils / Avancé / Console d'erreurs

Safari
Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
<true/>


lundi 13 avril 2009 à 04:56:50 | Re : envoyer un champ input text via ajax pour tchat

iznobe2601

merci pour le debugeur , faut encore que j ' apprenne à m ' en servir

si tu pouvais me guider un peu dans un premier temps .

voici la fonction que j ' utilise :

<script type="text/javascript" language="javascript">
        function ObjectDiv( div , content )
        {
                if ( document.getElementById )
                {
                        document.getElementById( div ).innerHTML = content;
                }
                        else
                {
                        if ( document.layers )
                        {
                                document.div.innerHTML = content;
                        }
                                else
                        {
                                document.all.div.innerHTML = content;
                        }
                }
        }
       
        function Goto( FILE , METHOD , DATA , div )
        {
                if( METHOD == 'GET' && DATA != null )
                {
                        FILE += '?' + DATA;
                        DATA = null;
                }

                var httpRequestM = null;  

                        if( window.XMLHttpRequest )
                        {   // Firefox  
                            httpRequestM = new XMLHttpRequest();
                        }
                        else if( window.ActiveXObject )
                        {   // Internet Explorer  
                            httpRequestM = new ActiveXObject( "Microsoft.XMLHTTP" );
                        }
                        else
                        {   // XMLHttpRequest non supporté par le navigateur  
                            return "Votre navigateur ne supporte pas les objets XMLHTTPRequest...";
                        }  
  
                                httpRequestM.open( METHOD , FILE , true );
                                httpRequestM.onreadystatechange = function()
                                {  
                                        if( httpRequestM.readyState == 4 )
                                        {
                                                ObjectDiv( div , httpRequestM.responseText );
                                        }
                                }
               
                        if( METHOD  == 'POST' )  
                        {
                                httpRequestM.setRequestHeader( "Content-type" , "application/x-www-form-urlencoded" );
                        }

                 httpRequestM.send( DATA );  
        }

        function ViewContent( div , href , method , data )
        {
                var wait = "<div align='center'>" +
                           "<b><font style='color:red;'>Chargement en cours.....</font></b><br><br>" +
                           "<img src='./loading.gif' border='0' alt='Chargement en cours....'>" +
                           "</div>";

                ObjectDiv( div , wait );
                Goto( href , method , data , div );
        }
</script>
<!--
Dorénavent vous aurait juste a inclure ce fichier Javascript dans vos pages,
Et vous pourais utilisé la technologie Ajax,
Vous pourez l'activer a partir d'un simple lien, ou d'une image ( onclick )...
Vous pouvez géré vos requete quelles soient Post ou Get


   [  Voici un exemple pour GET ( si vous ne souhaiter pas mettre de variable )  ] :

         <div id="laDiv">Initial CONTENT</div>
         <a href="javascript:ViewContent( 'laDiv' , 'votre_page.html' , 'GET' , null );"></a>

            REQUETE EFFECTUER VERS : votre_page.html


   [  Voici un exemple pour GET ( si vous souhaiter mettre des variables )  ] :

         <div id="laDiv">Initial CONTENT</div>
         <a href="javascript:ViewContent( 'laDiv' , 'votre_page.html' , 'GET' , 'variable1=content1&variable2=content2&' );"></a>

            REQUETE EFFECTUER VERS : votre_page.html?variable1=content1&variable2=content2&


   [  Voici un exemple pour POST                                            ] :

         <div id="laDiv">Initial CONTENT</div>
         <a href="javascript:ViewContent( 'laDiv' , 'votre_page.php' , 'POST' , 'variable1=content1&variable2=content2&' );"></a>

            REQUETE EFFECTUER VERS : votre_page.php
            Avec les variables suivantes : $_POST[ 'variable1' ] = 'content1'; $_POST[ 'variable2' ] = 'content2';
     
//-->

encore merci Bul3de  te pencher sur mon probleme .

 si je modifife la syntaxe du lien en ajoutant des ' ou des " ( par paires )  il ne marche plus .



lundi 13 avril 2009 à 08:43:40 | Re : envoyer un champ input text via ajax pour tchat

Bul3

Membre Club


Bonjour,

bah... tu restes sur quasi la même erreur....
<a href="javascript:ViewContent( 'laDiv' , 'votre_page.html' , 'GET' , 'variable1=content1&variable2=content2&' );"></a>
mieux :
<a href="javascript:void(ViewContent( 'laDiv' , 'votre_page.html' , 'GET' , 'variable1='+content1+'&variable2='+content2));">lien</a>

et généralement sur un lien, il faut utiliser void ou faire un return false
pas regardé le reste

si c'est en GET, faudrait voir la fonction, car peut-être manque-t-il
un ? en tête des paramètres ( s'il n'est pas mis dans ViewContent )


lundi 13 avril 2009 à 10:38:32 | Re : envoyer un champ input text via ajax pour tchat

iznobe2601

en mettant le lien sous la syntaxe que tu m ' as donné , voilà les resultats que j ' obtiens dans firebug :

Permission refusée d'appeler la méthode Location.toString
undefined
content1 is not defined
javascript:void(ViewContent('page',%20's..._text='+content1+'&sent='+content2+''));
javascri...nt2+'')); (ligne 1)
uncaught exception: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getCharPref]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: chrome://utorrent/content/prefs.js :: anonymous :: line 41" data: no]

lundi 13 avril 2009 à 11:02:43 | Re : envoyer un champ input text via ajax pour tchat

Bul3

Membre Club
>>content1 is not defined
eh ben alors ?!?
met dans cette variable ce que tu veux envoyer
    comme valeur pour shbox_text
si cette variable n'est pas initilalisée,
elle est indéfinie
si tu mets dans les guillemets, ce sera content1
    qui serait envoyé
'variable1=content1&variable2=content2'
en php tu récupères 'content1' et 'content2'

var content1='tata';
var content2='titi';
'variable1='+content1+'&variable2='+content2
en php tu récupères 'tata' et 'titi'

@+
lundi 13 avril 2009 à 11:42:32 | Re : envoyer un champ input text via ajax pour tchat

iznobe2601

le principe c ' est justement que je ne sais pas ce qu ' il y a dedans puisque chaque membre poste ce qu ' il a envie dans le  tchat ( shoutbox ) d ' ou l ' interet de recupere la variable postée apres la xhr .....

le probleme vient peut etre de mon input alors ...

ce que je ne comprends pas c ' est que j ' utilise la meme fontion en get pour supprimer les messages incorrect et là , ça marche comme sur des roulettes ...

il doit bien y avoir un moyen de recuperer le message des membres apres la XHR pour que je puisse enregistrer leur message ou du mloins l ' afficher .

le tout c ' est de pouvoir la recuperer pour ensuite la traiter ....

 là je commence vraiment a desperer plus d ' une semaine sur ce truc là mais ce qui me gene le plus personnellement dans ce message de firebug , c' est plutot la premiere ligne et non pas le fait  que la variable ne soit pas initialisée . ( Permission refusée d'appeler la méthode Location.toString )

on dirait que le serveur ne veut pas que javascript recupere la variable ...

ce qui engendre les autres erreurs ...mais comme je suis un newbie je ne m ' aventurerais pas plus loin et je ne suis pas sur ce sont  des suppositions ...

1 2

Cette discussion est classée dans : input, text, envoyer, ajax, div


Répondre à ce message

Sujets en rapport avec ce message

Récuperation du Focus sur un Input apres mise a jour du div via Ajax [ par izy ] Bonjour, mon problème est le suivant je bosse actuellement sur une page qui fais des ajoute/suppression/motification dans une base mysql et j'aurais b Comment inserer dynamiquement un champ input [ par Jarod1980 ] Bonjour,Je voudrais savoir comment peut on insérer dynamiquement des champs input type texte dans une page. Sachant que chaque champ input text doit a faire sauter le curseul d'un input text vers le suivant [ par kgadhi ] Bonjour tout le monde et merci pour votre aide,Je cherche un moyen de faire passer le curseur d'un input text à un autre mais automatiquement,j'ai réc Ajout automatique d'un champ de texte selon choix d'un menu déroulant [ par rEvOhSaLf ] Salut le monde :)Je suis entrain de faire un petit formulaire qui me fait un peu peiner...J'ai que une select box avec 5 choix:Choix 1 ="1"Choix 2 ="2 Variable Javascript VS Php [ par Eckmoule ] Bonjour, Je suis entrain de creer un site qui est principalement basé sur php mais pour lequel j'essaye d'inclure de l'ajax à l'aide de Jquery pour re Style de input type=text [ par yallal ] Bonjour,j'ai un problème pour le style d'un input. J'aimerais rendre le tour blanc ainsi que le fondSous IE7 cela Pb de soumission de formulaire php avec jQuery [ par prozenproses ] Bonjour,Avant toute chose je vous annonce que je travaille sur une "plateforme" AJAX avec jQuery.Mon site se compose en 3 partie : - l'entete : qui re Input Text et saisie semie automatique [ par fcot2002 ] Bonjour, je cherche une solution à une question concernant Input text. j'ai cherché, trouvé des posts, mais rien trouvé répondant à ma problématique Concaténation des choix d'une liste déroulante dans un input text [ par alaska749 ] Bonjour, Qui pourrait m'aider a créer un script js me permettant d'effectuer ceci: J'aimerais construire une interface permettant à un utilisateur de Remplir une div avec Ajax [ par sagat06 ] Bonjour à tous,j'ai un petit soucis qui, je l'espère, pourra être résolu avec votre aide. J'ai réalisé un petit bout de code avec pour objectif de r


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales