Onclick requête http

Résolu/Fermé
none61 Messages postés 82 Date d'inscription mercredi 23 avril 2014 Statut Membre Dernière intervention 14 avril 2020 - 14 oct. 2016 à 12:37
none61 Messages postés 82 Date d'inscription mercredi 23 avril 2014 Statut Membre Dernière intervention 14 avril 2020 - 15 oct. 2016 à 18:23
Bonjour à tous,

Je me permet de venir poster sur le forum car en effet je rencontre un petit souci...

- Essayant de me faire une page html(index.html) avec un Icône sur lequel on peut cliquer dessus pour appeler une page php(test.php), j'ai donc écrit les lignes suivante:

<span id ="iconeall" style="margin-left: 110px;">
<img src="icone.png" onclick="document.location.href = 'test.php'; return false;" style="cursor:pointer;" />
</span>

- Lorsque je clic sur mon icône, ma page test.php est bien appelé car le script qu'elle contient est bien exécuté. ;-)

- Cependant, cela me fait quitter ma page d'index.html pour afficher ma page test.php malgrés "return false"

- Je souhaiterais que ma page soit seulement requetée et et rester sur ma page index.html.

Merci d'avance ;-)

3 réponses

animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 738
14 oct. 2016 à 15:18
Salut
fais
<a href="test.php" rel="nofollow noopener noreferrer" target="_blank"><img src="icone.png"></a>

ca ouvre une nouvelle fenetre ou onglet
sinon tu peux faire
onclick="window.open('test.php'); return(false);"
 
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
14 oct. 2016 à 17:12
Salut,

La solution classique pour effectuer une requête sans recharger la page est l'utilisation d'ajax : https://developer.mozilla.org/fr/docs/Web/Guide/AJAX

Bonne journée,
0
none61 Messages postés 82 Date d'inscription mercredi 23 avril 2014 Statut Membre Dernière intervention 14 avril 2020
14 oct. 2016 à 18:59
salut animostab :

J'ai testé tes deux méthodes, à la difference de ce que j'avais, tes méthodes font ouvrir ma page test.php dans un nouvel onglet

Hors je ne veux pas qu'une nouvelle page s'ouvre...je voudrais just que ma page test.php soit requetté d'une manière transparente.

Pitet, merci pour ta réponse mais ajax c'est du javascript nan? j'ai peur de m'y mélanger un peu ...
0
none61 Messages postés 82 Date d'inscription mercredi 23 avril 2014 Statut Membre Dernière intervention 14 avril 2020
14 oct. 2016 à 23:15
Bonsoir,

Après plusieurs heures de recherches, je suis arrivé a ceci:

<a href="" onclick=" rel="nofollow noopener noreferrer" target="_blank"gestionClic(); return false;">
Cliquez ici !
</a>

<script type="text/javascript">

var http; // Notre objet XMLHttpRequest

function createRequestObject()
{
var http;
if (window.XMLHttpRequest)
{ // Mozilla, Safari, IE7 ...
http = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{ // Internet Explorer 6
http = new ActiveXObject("Microsoft.XMLHTTP");
}
return http;
}

function gestionClic()
{
http = createRequestObject();
http.open('GET', 'http://IP de mo serveur apache/test.php', true);
http.onreadystatechange = handleAJAXReturn;
http.send(null);
}

</script>

Mais malheureusement cela ne fonctionne pas pour le moment

J'avoue qu'un coup de pouce serait le bienvenue....
0
none61 Messages postés 82 Date d'inscription mercredi 23 avril 2014 Statut Membre Dernière intervention 14 avril 2020
15 oct. 2016 à 18:23
bonjour,

Donc je m'auto répond car j'ai trouvé quelque chose qui fonctionne donc si ça peux aider quelqu'un....

<span id ="iconeone" style="margin-left: 750px;">
<img src="icone.png" onclick="clickmvone()" style="cursor:pointer;" />
</span>

<script type="text/javascript">
function clickmvone()
{
var xhr_object = null;

if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}

xhr_object.onreadystatechange = function() {
if(xhr_object.readyState == 4) {
var reponse= xhr_object.responseText;
document.getElementById("reponse").innerHTML=reponse;
}
}

xhr_object.open("GET","http://IP serveur apache/test.php",true);
xhr_object.send();

}
</script>


Cordialement
0