J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
Je suis amené à générer une image en GD de manière automatique, ce
sont des pronostics, affichés sous forme d'image *.jpg par un script
recevant un identificateur aléatoire. Ce script rend donc un header
image/jpeg, et est appelé théoriquement par le script initial, par une
balise <img src="url_script?param=value"> , ou param est
l'identificateur aléatoire, et value sa valeur.
Le problème, c'est que cet identificateur sera visible dans le source
de la page appelante, et que je ne peux pas supprimer de la bdd le
pronostic, pour éviter que l'on appelle de nouveau ( de manière
automatique ) l'url "url_script?param=value" par exemple par curl, car
la balise <img ne charge la données qu'à partir du navigateur,
c'est-à-dire après que la page appelante ait été interprétée et envoyée
au navigateur.
J'aimerais bien pouvoir mettre dans un seul script, la génération de
l'image gd, et la balise <img qui l'affiche ( ou quoi que ce soit
d'équivalent qui affiche l'image ), mais je ne sais pas comment faire.
J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
Je suis amené à générer une image en GD de manière automatique, ce
sont des pronostics, affichés sous forme d'image *.jpg par un script
recevant un identificateur aléatoire. Ce script rend donc un header
image/jpeg, et est appelé théoriquement par le script initial, par une
balise <img src="url_script?param=value"> , ou param est
l'identificateur aléatoire, et value sa valeur.
Le problème, c'est que cet identificateur sera visible dans le source
de la page appelante, et que je ne peux pas supprimer de la bdd le
pronostic, pour éviter que l'on appelle de nouveau ( de manière
automatique ) l'url "url_script?param=value" par exemple par curl, car
la balise <img ne charge la données qu'à partir du navigateur,
c'est-à-dire après que la page appelante ait été interprétée et envoyée
au navigateur.
J'aimerais bien pouvoir mettre dans un seul script, la génération de
l'image gd, et la balise <img qui l'affiche ( ou quoi que ce soit
d'équivalent qui affiche l'image ), mais je ne sais pas comment faire.
J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
Je suis amené à générer une image en GD de manière automatique, ce
sont des pronostics, affichés sous forme d'image *.jpg par un script
recevant un identificateur aléatoire. Ce script rend donc un header
image/jpeg, et est appelé théoriquement par le script initial, par une
balise <img src="url_script?param=value"> , ou param est
l'identificateur aléatoire, et value sa valeur.
Le problème, c'est que cet identificateur sera visible dans le source
de la page appelante, et que je ne peux pas supprimer de la bdd le
pronostic, pour éviter que l'on appelle de nouveau ( de manière
automatique ) l'url "url_script?param=value" par exemple par curl, car
la balise <img ne charge la données qu'à partir du navigateur,
c'est-à-dire après que la page appelante ait été interprétée et envoyée
au navigateur.
J'aimerais bien pouvoir mettre dans un seul script, la génération de
l'image gd, et la balise <img qui l'affiche ( ou quoi que ce soit
d'équivalent qui affiche l'image ), mais je ne sais pas comment faire.
J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
J'aurais besoin d'afficher des données non copiables automatiquement,
donc ne figurant pas dans le source.
pour éviter que l'on appelle de nouveau ( de manière > automatique )
l'url "url_script?param=value" par exemple par curl,
Peut être en limitant l'appel au script en controlant le contenu de la
variable
$_SERVER['HTTP_REFERER']
pour éviter que l'on appelle de nouveau ( de manière > automatique )
l'url "url_script?param=value" par exemple par curl,
Peut être en limitant l'appel au script en controlant le contenu de la
variable
$_SERVER['HTTP_REFERER']
pour éviter que l'on appelle de nouveau ( de manière > automatique )
l'url "url_script?param=value" par exemple par curl,
Peut être en limitant l'appel au script en controlant le contenu de la
variable
$_SERVER['HTTP_REFERER']
D'un autre côté, tu peux représenter ton image sous forme d'une série
d'images de 1 pixel de haut, images nommées aléatoirement et dont
l'ordre est donné par le script ci-dessus.
Comme on utilise du javascript pour voir le résultat, tu peux
désactiver certaines fonctions du navigateur. Par contre, le
bouton "imprimer écran" ne peut pas être désactivé. Au mieux, tu
diminueras le nombre d'utilisateurs pouvant recopier le contenu mais
ce ne sera jamais "aucun" et rien n'empêche un débutant d'apprendre
à utiliser le bouton du clavier pour imprimer l'écran !
Ceci dit, je sais qu'on peut utiliser Flash pour remplir l'écran au
complet,
donc il ne reste plus de bouton sur le navigateur. Mais
Flash est installé dans le navigateur et pour obtenir le même
résultat en bloquant un bouton du clavier, il faudrait d'un côté
avoir beaucoup de connaissances en programmation, et de l'autre,
obliger l'utilisateur à installer un tel plug-in.
De toutes façons, ces idées sont indépendantes du PHP et devraient
être étudiées dans les forums appropriés.
D'un autre côté, tu peux représenter ton image sous forme d'une série
d'images de 1 pixel de haut, images nommées aléatoirement et dont
l'ordre est donné par le script ci-dessus.
Comme on utilise du javascript pour voir le résultat, tu peux
désactiver certaines fonctions du navigateur. Par contre, le
bouton "imprimer écran" ne peut pas être désactivé. Au mieux, tu
diminueras le nombre d'utilisateurs pouvant recopier le contenu mais
ce ne sera jamais "aucun" et rien n'empêche un débutant d'apprendre
à utiliser le bouton du clavier pour imprimer l'écran !
Ceci dit, je sais qu'on peut utiliser Flash pour remplir l'écran au
complet,
donc il ne reste plus de bouton sur le navigateur. Mais
Flash est installé dans le navigateur et pour obtenir le même
résultat en bloquant un bouton du clavier, il faudrait d'un côté
avoir beaucoup de connaissances en programmation, et de l'autre,
obliger l'utilisateur à installer un tel plug-in.
De toutes façons, ces idées sont indépendantes du PHP et devraient
être étudiées dans les forums appropriés.
D'un autre côté, tu peux représenter ton image sous forme d'une série
d'images de 1 pixel de haut, images nommées aléatoirement et dont
l'ordre est donné par le script ci-dessus.
Comme on utilise du javascript pour voir le résultat, tu peux
désactiver certaines fonctions du navigateur. Par contre, le
bouton "imprimer écran" ne peut pas être désactivé. Au mieux, tu
diminueras le nombre d'utilisateurs pouvant recopier le contenu mais
ce ne sera jamais "aucun" et rien n'empêche un débutant d'apprendre
à utiliser le bouton du clavier pour imprimer l'écran !
Ceci dit, je sais qu'on peut utiliser Flash pour remplir l'écran au
complet,
donc il ne reste plus de bouton sur le navigateur. Mais
Flash est installé dans le navigateur et pour obtenir le même
résultat en bloquant un bouton du clavier, il faudrait d'un côté
avoir beaucoup de connaissances en programmation, et de l'autre,
obliger l'utilisateur à installer un tel plug-in.
De toutes façons, ces idées sont indépendantes du PHP et devraient
être étudiées dans les forums appropriés.
Finalement... Le seul problème pour moi, est que l'affichage soit
fait de telle manière, que l'identificateur ( aléatoire ) du script
d'affichage, ne soit pas visible dans le source.
Pour celà, il me suffit tout simplement, au lieu d'utiliser une
balise <im src="url_script?param=value" /> dans le script appelant, de
simplement positionner dans le script d'affichage, l'instruction php :
imagejpeg($img) , qui enverra l'image directement au navigateur.
Le contenu de l'image étant donc fixé au départ, je peux d'une part,
appeler dans le script initial, le script d'affichage par curl, et
d'autre part, après cet appel, supprimer l'enregistrement de cette
image, dans la base de données.
Chaque pronostic est généré juste avant son affichage, puis envoyé au
navigateur, puis effacé. Donc il est incopiable.
Le seul moyen de le copier, dans ce cas, est d'utiliser un navigateur
ou à la rigueur un sniffeur de site. Mais... Comment sélectionner la
partie purement image dans un affichage, dans le contenu rendu par un
sniffeur ( wget, ou curl, ou... ), sans que cet affichage n'ait aucun
correspondant textuel ?
Finalement... Le seul problème pour moi, est que l'affichage soit
fait de telle manière, que l'identificateur ( aléatoire ) du script
d'affichage, ne soit pas visible dans le source.
Pour celà, il me suffit tout simplement, au lieu d'utiliser une
balise <im src="url_script?param=value" /> dans le script appelant, de
simplement positionner dans le script d'affichage, l'instruction php :
imagejpeg($img) , qui enverra l'image directement au navigateur.
Le contenu de l'image étant donc fixé au départ, je peux d'une part,
appeler dans le script initial, le script d'affichage par curl, et
d'autre part, après cet appel, supprimer l'enregistrement de cette
image, dans la base de données.
Chaque pronostic est généré juste avant son affichage, puis envoyé au
navigateur, puis effacé. Donc il est incopiable.
Le seul moyen de le copier, dans ce cas, est d'utiliser un navigateur
ou à la rigueur un sniffeur de site. Mais... Comment sélectionner la
partie purement image dans un affichage, dans le contenu rendu par un
sniffeur ( wget, ou curl, ou... ), sans que cet affichage n'ait aucun
correspondant textuel ?
Finalement... Le seul problème pour moi, est que l'affichage soit
fait de telle manière, que l'identificateur ( aléatoire ) du script
d'affichage, ne soit pas visible dans le source.
Pour celà, il me suffit tout simplement, au lieu d'utiliser une
balise <im src="url_script?param=value" /> dans le script appelant, de
simplement positionner dans le script d'affichage, l'instruction php :
imagejpeg($img) , qui enverra l'image directement au navigateur.
Le contenu de l'image étant donc fixé au départ, je peux d'une part,
appeler dans le script initial, le script d'affichage par curl, et
d'autre part, après cet appel, supprimer l'enregistrement de cette
image, dans la base de données.
Chaque pronostic est généré juste avant son affichage, puis envoyé au
navigateur, puis effacé. Donc il est incopiable.
Le seul moyen de le copier, dans ce cas, est d'utiliser un navigateur
ou à la rigueur un sniffeur de site. Mais... Comment sélectionner la
partie purement image dans un affichage, dans le contenu rendu par un
sniffeur ( wget, ou curl, ou... ), sans que cet affichage n'ait aucun
correspondant textuel ?
Tiens, voici un essai : <http://www.miakinen.net/tmp/data_uri/>.
Regarde à quoi ressemble le code HTML généré (Ctrl+U avec les
navigateurs Gecko sur Windows).
Tu peux voir le code source PHP en rajoutant le paramètre show=source :
<http://www.miakinen.net/tmp/data_uri/?show=source>. Comme tu peux le
constater, l'image est bien générée à la volée par imagejpeg().
Tiens, voici un essai : <http://www.miakinen.net/tmp/data_uri/>.
Regarde à quoi ressemble le code HTML généré (Ctrl+U avec les
navigateurs Gecko sur Windows).
Tu peux voir le code source PHP en rajoutant le paramètre show=source :
<http://www.miakinen.net/tmp/data_uri/?show=source>. Comme tu peux le
constater, l'image est bien générée à la volée par imagejpeg().
Tiens, voici un essai : <http://www.miakinen.net/tmp/data_uri/>.
Regarde à quoi ressemble le code HTML généré (Ctrl+U avec les
navigateurs Gecko sur Windows).
Tu peux voir le code source PHP en rajoutant le paramètre show=source :
<http://www.miakinen.net/tmp/data_uri/?show=source>. Comme tu peux le
constater, l'image est bien générée à la volée par imagejpeg().
D'un côté, je sais que le code de certains sites est à peu près
illisible. On a beaucoup de javascript, des variables avec 1 seul
caractère, des instructions sous forme de chaînes, genre
a="eygvqewugcdasilb238dg9vbf9b" et le script construit le résultat
à partir de cette chaîne. Il me semble avoir vu des trucs de la
sorte chez Yahoo (dans le processus de création d'un compte), l'idée
étant pour eux de se protéger contre les robots).
D'un côté, je sais que le code de certains sites est à peu près
illisible. On a beaucoup de javascript, des variables avec 1 seul
caractère, des instructions sous forme de chaînes, genre
a="eygvqewugcdasilb238dg9vbf9b" et le script construit le résultat
à partir de cette chaîne. Il me semble avoir vu des trucs de la
sorte chez Yahoo (dans le processus de création d'un compte), l'idée
étant pour eux de se protéger contre les robots).
D'un côté, je sais que le code de certains sites est à peu près
illisible. On a beaucoup de javascript, des variables avec 1 seul
caractère, des instructions sous forme de chaînes, genre
a="eygvqewugcdasilb238dg9vbf9b" et le script construit le résultat
à partir de cette chaîne. Il me semble avoir vu des trucs de la
sorte chez Yahoo (dans le processus de création d'un compte), l'idée
étant pour eux de se protéger contre les robots).
Bonjour,
Si ce n'est que ça, tu peux toujours y mettre un identificateur non
aléatoire (incrémenté de 1 à chaque fois) et garder sur le serveur une
liste de correspondance entre les deux. ;-)
Bonjour,
Si ce n'est que ça, tu peux toujours y mettre un identificateur non
aléatoire (incrémenté de 1 à chaque fois) et garder sur le serveur une
liste de correspondance entre les deux. ;-)
Bonjour,
Si ce n'est que ça, tu peux toujours y mettre un identificateur non
aléatoire (incrémenté de 1 à chaque fois) et garder sur le serveur une
liste de correspondance entre les deux. ;-)