webpower Posté 20 Octobre 2008 Posté 20 Octobre 2008 Hello, voilà j'ai un problème qui me bloque totalement. Sur se serveur : www.votreimmobilier.fr, un script permet de se connecter à la base de donner de www.serialscan.com et de vérifier si un numéro est inséré dans ma base de donnée. Le seul problème c'est que sa marche mais en faisant une altération des données. Sinon le script (sur votreimmobilier.fr) va tout simple faire cette requete : http://votreimmobilier.fr/www.serialscan.c...al=TD4567QZ8596 alors qu'il devrait juste faire : http://www.serialscan.com/verifserial.php?...al=TD4567QZ8596 En gros il rajoute votreimmobilier.fr pour rien, comment le supprimer ? Merci pour votre aide.
cyberlaura Posté 20 Octobre 2008 Posté 20 Octobre 2008 Bonjour, difficile à dire sans voir le code, mais ceci ressemble à un oubli de http:// devant www.serialscan.com
webpower Posté 20 Octobre 2008 Auteur Posté 20 Octobre 2008 (modifié) voici le code du fichier javascript qui se trouve sur le serveur serialscan : function writediv(texte) { document.getElementById('serialbox').innerHTML = texte; }function verifserial(serial) { if(serial != '') { if(serial.length<2) writediv('<span style="color:#cc0000">Le numéro de série: <b><u>'+serial+'</u></b> est trop court</span>'); else if(serial.length>100) writediv('<span style="color:#cc0000">Le numéro de série: <b><u>'+serial+'</u></b> est trop long</span>'); else if(texte = file('verifserial.php?serial='+escape(serial))) { if(texte == 1) writediv('<span style="color:#cc0000">Le numéro de série: <b><u>'+serial+'</u></b> est déclaré dans la base de donnée.<br>Pour plus d\'information, veuillez vous connecter ou vous <a href="/?go=i1" >inscrire</a>.</span>'); else if(texte == 2) writediv('<span style="color:#1A7917">Le numéro de série: <b><u>'+serial+'</u></b> n\'est pas déclaré dans la base de donnée.</span>'); else writediv(texte); } } }function file(fichier) { if(window.XMLHttpRequest) // FIREFOX xhr_object = new XMLHttpRequest(); else if(window.ActiveXObject) // IE xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); else return(false); xhr_object.open("GET", fichier, false); xhr_object.send(null); if(xhr_object.readyState == 4) return(xhr_object.responseText); else return(false); } et voici le code de "l'api" que vous pouvez ajouter sur votre serveur pour faire des recherches sans venir sur serialscan: <?echo'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><script type="text/javascript" src="http://www.serialscan.com/api/js/jsapi.js"></script><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>API</title><link href="http://www.serialscan.com/api/css/apistyle.css" rel="stylesheet" type="text/css" /></head><body><br><input type="text" class="recherche" id="textfield2" name="serial" VALUE="Exemple: 123aZe5" onfocus="this.value=\'\'" OnBlur="verifserial(this.value)" /> <input type="submit" value="Scanner" name="scann" value="" /> <br><br><div id="serialbox"></body></html>';?> Modifié 20 Octobre 2008 par webpower
cyberlaura Posté 20 Octobre 2008 Posté 20 Octobre 2008 Il me semble que sur la ligne else if(texte = file('verifserial.php?serial='+escape(serial))) tu devrais mettre else if(texte = file('http://www.serialscan.com/verifserial.php?serial='+escape(serial))) car tu n'es pas sur le serveur de serialscan au moment où tu l'appelles...
webpower Posté 20 Octobre 2008 Auteur Posté 20 Octobre 2008 j'ai déjà essayé, mais enfaite il prends toujours en compte l'adresse de l'hébergement...
cyberlaura Posté 20 Octobre 2008 Posté 20 Octobre 2008 Aie : j'ai lu plusieurs messages comme quoi XMLHttpRequest ne pourrait pas appeler des URL externes au domaine en cours. Question de sécurité semble t-il ...
webpower Posté 20 Octobre 2008 Auteur Posté 20 Octobre 2008 hum plus tôt gênant. Aurais-tu une solution ?
cyberlaura Posté 20 Octobre 2008 Posté 20 Octobre 2008 Et bien, si ça ne peut pas passer en javascript, il faut le faire coté serveur, en php par exemple. Il n'a pas cette limitation en tout cas. Cela suppose un Submit et de fournir le code php qui va effectuer l'appel à verifserial.php.
webpower Posté 20 Octobre 2008 Auteur Posté 20 Octobre 2008 le problème c'est au niveau de la connexion base de donnée...
cyberlaura Posté 20 Octobre 2008 Posté 20 Octobre 2008 Ah non, le programme en php doit être le même qu'en javascript : il va juste appeler une URL sur ton serveur qui lui renverra uniquement la réponse de type oui/non
webpower Posté 20 Octobre 2008 Auteur Posté 20 Octobre 2008 ok, je vais regarder en ajax pour faire un truc bien.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant