Aller au contenu

Sujets conseillés

Posté

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.

Posté

Bonjour,

difficile à dire sans voir le code, mais ceci ressemble à un oubli de http:// devant www.serialscan.com

Posté (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é par webpower
Posté

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...

Posté

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 ...

Posté

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.

Posté

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

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...