2010-11-10 10 views
-4

Mon code:Script n'ouvre pas le bon lien

var link; 
var wid; 
chrome.tabs.getSelected(null,function(tab) { 
    link = tab.url; 
}); 
http.open('get', 'http://surfkid.redio.de/linki.php?site_url='+link); 
function insertReply() { 

} 
http.onreadystatechange = insertReply(); 
http.send(null); 

Cela ne fonctionne pas, mais je ne sais pas pourquoi.

+1

Ce qui ne fonctionne pas? Qu'est-ce que cela a à voir avec PHP? –

+0

Qu'est-ce qu'il essaie de faire? Qu'est-ce qui se passe à la – nmichaels

+0

que php écrit l'URL dans un db. Le php fonctionne perfekt mais l'extention pas. – user422039

Répondre

1

Vous avez oublié de lancer une instance de XMLHttpRequest:

var http = new XMLHttpRequest(); 

Vous devez utiliser encodeURIComponent pour encoder votre paramètre de requête:

http.open('get', 'http://surfkid.redio.de/linki.php?site_url='+encodeURIComponent(link)); 

Vous souhaitez joindre un écouteur d'événement à http.onreadystatechange, mais vous appelez en fait insertReply et définissez sa valeur de retour à la place. Débarrassez-vous de ces parenthèses:

http.onreadystatechange = insertReply; 

MISE À JOUR:chrome.tabs.getSelected travaux de manière asynchrone, de sorte que lors de l'accès link après que la fonction est exécutée, elle probablement encore undefined (voir aussi How can I get the URL for a Google Chrome tab?) Mettez votre code dans le gestionnaire de rappel. Script complet:

var wid, 
    http = new XMLHttpRequest(); 

chrome.tabs.getSelected(null,function(tab) { 
    http.open('get', 'http://surfkid.redio.de/linki.php?site_url=' + encodeURIComponent(tab.url)); 
    http.onreadystatechange = insertReply; 
    http.send(null); 
}); 

function insertReply() { 

} 
+0

maintenant j'ai une entrée db mais l'entrée est:. indéfini. mon code php: user422039

+0

@user: S'il vous plaît ne pas poster de code dans les commentaires, mais mettez à jour votre question et éventuellement poster un commentaire que vous avez fait ainsi. C'est à peine lisible. –

+0

désolé php -> http://codeviewer.org/view/code:13cf link.html -> http://codeviewer.org/view/code:13ce mainifest -> http://codeviewer.org/ voir/code: 13d0 – user422039