Es-que PHP peut exécuter du code javascript? [Fermé]

Signaler
Messages postés
3
Date d'inscription
vendredi 29 novembre 2019
Statut
Membre
Dernière intervention
29 novembre 2019
-
Messages postés
30472
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 décembre 2020
-
Salut, je voudrais savoir si PHP tu peut exécuter du code javascript, je m'explique, j'aurais besoin de savoir si une page html ou php fait une redirection en javascript

J'ai tester avec cURL et file_get_contents et après plusieurs test je me suis rendue compte que cURL lit simple le javascript mais l'exécute pas

Après vous allez me dire pourquoi tu n'utilise pas un preg_match_all et tu regarde si il y a pas de code javascript qui fait une redirection .

Le problèmes c'est que je ne peut pas basé sur le code html car sa ne correspondras pas à mes attentes

Pour ceux qui n'ont pas très compris se que je voudrais faire je vous met un exemple


<!DOCTYPE html>
<html>
<head>
	<title>Test cURL</title>
	<meta charset="utf-8">
</head>
<body>
<script>document.location.href="https://www.google.fr";</script>
</body>
</html>


En faite voudrez savoir si cette page fait une redirection en javascript mais sans me basé sur le code html
et je voudrez aussi récupérer l'URL de google


J'ai essayer ceci en PHP mais sauf PHP me retourne l'URL de ma page html, mais moi dans se cas la je voudrez récupérer l'URL de google sans me basé sur code html, car pour mon project je ne pourrais pas me baser sur le code html

<?php


$URL = 'http://192.168.1.39/cURL_test.html';


$ch = curl_init($URL);

	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
	curl_setopt($ch, CURLOPT_URL, $URL);
   

curl_exec($ch);
$info = curl_getinfo($ch,CURLINFO_EFFECTIVE_URL);
curl_close($ch);



echo $info; 

J'espère que vous aurez compris un peut pret se que je veut faire,
merci,
au revoir

2 réponses

Messages postés
13415
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
3 décembre 2020
750
bonjour, pourquoi n'expliques-tu pas ce que tu veux réaliser? veux-tu faire du web scraping de sites utilisant javascript?
Messages postés
3
Date d'inscription
vendredi 29 novembre 2019
Statut
Membre
Dernière intervention
29 novembre 2019

Salut, tu était presque mais c'est pas ça ou presque, je veut faire un scanneur en php de URL, exemple :
127.0.0.1/menbres.php?query=<svg/onload=document.location.href="https:\\\\www.google.frt"> Je veut savoir si mon javascript à était exécuté par ma page via php, sauf curl ne l'exécute pas :/
Messages postés
30472
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 décembre 2020
3 047
Bonjour
Pour fonctionner, le javascript a besoin d'être exécuté dans un environnement capable de le faire.
L'environnement en question.. c'est le navigateur web.
Le PHP, que tu utilises du CURL, du WGET... ne pourra pas exécuter le code JS.
Je ne connais pas, à ce jour, de méthode pour le faire.

Il ne te reste qu'à parser le contenu du html récupéré via ton appel CURL et y détécter ( à l'aide d'expressions régulières ) la présence de code du type document.location , window.location ...etc...


Messages postés
3
Date d'inscription
vendredi 29 novembre 2019
Statut
Membre
Dernière intervention
29 novembre 2019

Salut, merci de ta réponse, je ne sais pas si tu a vue le message juste au dessus, je cherche à faire un scanneur en php, et en passant par le code html regarder si le script est passer sa marcheras 1 fois sur deux, sinon comment je peut faire ? comment je peut reproduire cette environnement ? sans php
Messages postés
30472
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
4 décembre 2020
3 047 >
Messages postés
3
Date d'inscription
vendredi 29 novembre 2019
Statut
Membre
Dernière intervention
29 novembre 2019

Toi également as tu vu (et lu) la réponse que je t'ai faite ?
Tout particulièrement la ligne
Je ne connais pas, à ce jour, de méthode pour le faire