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

Messages postés
3
Date d'inscription
vendredi 29 novembre 2019
Statut
Membre
Dernière intervention
29 novembre 2019
- - Dernière réponse : jordane45
Messages postés
26892
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2019
- 29 nov. 2019 à 19:14
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
Afficher la suite 

2 réponses

Messages postés
9019
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2019
464
0
Merci
bonjour, pourquoi n'expliques-tu pas ce que tu veux réaliser? veux-tu faire du web scraping de sites utilisant javascript?
Maser_5399
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 :/
Commenter la réponse de yg_be
Messages postés
26892
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2019
1903
0
Merci
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...


Maser_5399
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
jordane45
Messages postés
26892
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2019
1903 > Maser_5399
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
Commenter la réponse de jordane45