Je me demandais s'il y a un moyen de vérifier qu'une page a été exécutée dans un navigateur (par un humain) en PHP.vérifier si la page est affichée dans le navigateur? PHP
J'ai une page qui doit seulement être accédée par une demande de cURL. Donc je ne veux pas que les utilisateurs fouillent dessus.
des idées?
grâce
EDIT:
Parce que c'est l'une de ces questions qui ne sont pas faciles à trouver sur le web, voici la solution i utilisé:
je suis venu avec une grâce idée à Anthony-Arnold. Ce n'est pas très stable, mais ça devrait l'être pour le moment.
J'ai simplement envoyé l'agent utilisateur dans ma demande cURL:
//made a new var with the user agent string.
$user_agent = "anything I want in here, which will be my user agent";
//added this line in the cURL request to send the useragent to the target page:
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
et je simplement écrit une instruction if pour y faire face:
if
($_SERVER['HTTP_USER_AGENT'] == "my expected useragent - the string i previously placed into the $user_agent var."){
echo "the useragent is as expected, do whatever";
}
else if
($_SERVER['HTTP_USER_AGENT'] != "my expected useragent - the string i previously placed into the $user_agent var."){
echo "useragent is not as expected, bye now."; exit();}
Et qui a fait l'affaire.
Vous pouvez envoyer une variable spéciale avec la requête cURL – Sedz
Que faire si un humain utilise curl sur la ligne de commande? : -O – deceze
C'est bien, mais si quelqu'un veut vraiment avoir accès en utilisant autre chose que curl, ils le peuvent. – Anthony