IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] Controle


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2005
    Messages
    63
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 63
    Par d�faut [AJAX] Controle
    Bonjour bonjour
    Un petit probleme de controle:
    Voila, j ai un lien pour aller sur une page php.
    Celle ci ne doit etre accessible que si une certaine table mysql est remplis.
    Vous allez me dire, tu n a qu a le faire en php ca ira plus vite mais non le probleme c'est que je dois avoir le lien en visible.J ai pensais a une alert qui s'affiche en disant un truc du genre " on ne passe pas"

    Pour ce faire, je fais de l'ajax.
    Lorsque l'utilisateur clique sur le lien je lance une fonction qui va chercher une valeur dans un xml qui est rempli grace a la table php.
    c'est bon vous suivez?
    Et si cet valeur est > 0 alors on passe sinon on passe pas.
    Voila le code:
    le xml:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    header('Content-Type: text/xml'); 
    echo "<?xml version=\"1.0\" encoding='ISO-8859-1'?>\n";
    if(isset($_GET['info']))
    {
    echo "<exemple>\n"; 							$idpers=$_GET['info'];
    $req='select * from pgh_format where id_pgh='.$idpers;
    $res=mysql_query($req);									$num=mysql_num_rows($res);								echo '<nombre nbr="'.$num.'" />';
    echo "</exemple>\n"; 
    }
    la fonction qui va apelle le xml avec un parametre pour la requete:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    function ajoutformat(num)
     {  
    			 toto=num;
    			  var url ="formatexistant.php?info="+toto;
     
    			   if (window.XMLHttpRequest) 
    			   {
     
    				   requete = new XMLHttpRequest();
    			   } 
    			   else 
    			   {  
    					if (window.ActiveXObject)
    					{
    					   requete = new ActiveXObject("Microsoft.XMLHTTP");
    					}
     
    				}
     
    				requete.open("GET",url,true);
    				requete.onreadystatechange=ajoutformatage;
    				requete.send(null);
     
    }
    et puis la fonction permettant faire passe ou de bloquer l'utilisateur:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    function ajoutformatage()
    {
     
     
      if (requete.readyState == 4) 
      {
    	  if (requete.status==200)
    		{
    			// exploitation des données de la réponse
    				  var noeud = requete.responseXML.getElementsByTagName("nombre");
    				 e = noeud.item(0);
    				 nombre=e.getAttribute("nbr");
    				 if(nombre==0)
    				 {
    					 alert('Impossible pour le moment, vous devez enregistré des formats et vos tarifs associés !!');
    					return false; 
    				 }
    				 else
    				 {
    					return true;
    				 }
    			}
    			else
    			{
    				alert(requete.status+'code');
    			}
    	}
    }
    Apres moulte test, j ai trouver d'ou viens le probleme, mais pour le regler....
    je sais po
    Voila l'erreur renvoyer par js :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    Erreur : [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"  nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: http://localhost/apmodif/javascript/fonctions.js :: ajoutformatage :: line 1833"  data: no]
    Fichier source : http://localhost/apmodif/javascript/fonctions.js
    Ligne : 1833
    Pourquoi le if (requete.status==200) marche pas??

    MErci d'avance pour vos (nombreuses?) reponses

    tiger63
    Ke le tigre soit en toi!!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    22
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 22
    Par d�faut
    Sinon, ormis l'erreur, �a fonctionne ou pas ?

  3. #3
    Membre confirm�
    Profil pro
    D�veloppeur Web
    Inscrit en
    F�vrier 2005
    Messages
    63
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 63
    Par d�faut ca passe a travers donc non
    euh non ca marche pas ca passe a la page suivante. sinon rien d autre erreur

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    22
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 22
    Par d�faut
    Ok, essaye donc avec cette fonction alors :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <script type="text/javascript">
    <!--
    var xmlhttp=false;
    /*@cc_on @*/
    /*@if (@_jscript_version >= 5)
    try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
    try {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
    xmlhttp = false;
    }
    }
    @end @*/
     
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    	xmlhttp = new XMLHttpRequest();
    }
     
    function getMyHTML(serverPage, objID) {
    	var obj = document.getElementById(objID);
    	obj.innerHTML = '<div id=loading_ajax align=center><img src="images/spinner.gif"></div>' ;
    	xmlhttp.open("GET", serverPage);
    	xmlhttp.onreadystatechange = function() 
    	{
    		if (xmlhttp.readyState == 4 && xmlhttp.status == 200) 
    		{
    			obj.innerHTML = xmlhttp.responseText;
    		}
    	}
    	xmlhttp.send('');
    }
    //-->
    </script>
    Pour l'appeller :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    echo '<script type="text/javascript">getMyHTML(\'/module/search_engine/_disp_search_model.php?search_model='.$search_model.'\',\'ajaxcontentarea\'); </script>' ;

Discussions similaires

  1. [C#][AJAX] control server
    Par ALCINA dans le forum ASP.NET
    R�ponses: 8
    Dernier message: 20/10/2007, 20h51
  2. AJAX Control Toolkit
    Par samworld dans le forum ASP.NET
    R�ponses: 9
    Dernier message: 25/06/2007, 16h56
  3. Formater le calendar Ajax control Toolkit
    Par kazoumoulox dans le forum ASP.NET
    R�ponses: 1
    Dernier message: 11/06/2007, 09h19
  4. Ajax Controls (Atlas) TabPanel et usercontrol
    Par chnew dans le forum ASP.NET
    R�ponses: 4
    Dernier message: 06/06/2007, 10h35
  5. Ajax Control Toolkit, info ou intox?
    Par gniouf2k6 dans le forum ASP.NET
    R�ponses: 3
    Dernier message: 15/02/2007, 08h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo