Signaler

Onclick requête http [Résolu]

Posez votre question none61 39Messages postés mercredi 23 avril 2014Date d'inscription 28 octobre 2016 Dernière intervention - Dernière réponse le 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 ;-)
Afficher la suite 
Utile
+0
moins plus
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);"
 
Ajouter un commentaire
Utile
+0
moins plus
Salut,

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

Bonne journée,
none61 39Messages postés mercredi 23 avril 2014Date d'inscription 28 octobre 2016 Dernière intervention - 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 ...
Répondre
Ajouter un commentaire
Utile
+0
moins plus
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....
none61 39Messages postés mercredi 23 avril 2014Date d'inscription 28 octobre 2016 Dernière intervention - 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
Répondre
Ajouter un commentaire

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !