我想知道如何将网站用户的电子邮件转换为图片?
我有一个广告网站,我希望使用此工具保护用户的电子邮件。我看过许多提供此任务的网站,但我想在网站上为显示的每个用户电子邮件进行此操作。
任何线索?
我使用PHP来执行此操作:
if (isset($_GET['text'])) {
// get string
$text = $_GET['text'];
} else {
// set default
$text = 'liame';
};
// reverse string
$text = strrev($text);
$textLength = strlen($text);
$textHeight = 10;
// create image handle
$image = ImageCreate($textLength*($textHeight-1),20);
// set colours
$backgroundColour = ImageColorAllocate($image,255,255,255); // white
$textColour = ImageColorAllocate($image,0,0,0); // black
// set text
ImageString($image,$textHeight,0,0,$text,$textColour);
// set correct header
header('Content-type: image/png');
// create image
ImagePNG($image);
然后
$email = $row['email'];
<img src="image.php?text=<?php echo $email; ?>" alt="Hidden Email" />
但它不起作用,图像显示为破碎。
答案 0 :(得分:1)
这是&#34;直接来自DB&#34;溶液:
旁注: 我选择使用带有WHERE
子句的两列,但您可以更改它。
按照你想要的方式去做,好吧......你问题下面的评论不言自明。
您可以在要显示的页面中iframe
内设置它(此代码)。
旁注:
它不能 成为&#34;包含&#34;,因为它会使用图片的标题覆盖您网页的内容。
是的,我知道并且我知道它会破坏目的,但您也可以从img src
显示并链接到href
或mailto:
&lt; = 它 - 我只想概述您的(其他)选项,如果您希望将来使用它们。将其链接到人们可以填写的表单,将是一种更好的方式。
<a href="http://www.example.com"><img src="image_generator_file.php"></a>
或根本就没有链接它:
<img src="image_generator_file.php" border="0">
旁注: WHERE id = 1
可以更改为WHERE id = $user_id
并填充并从数据库获取。如果它是VARCHAR并且提前预先定义变量,则需要将其包装在引号WHERE id = '$user_id'
中。即:例如$user_id = $row['email'];
。
<强> PHP / SQL:强>
<?php
include 'connection.php'; // Make sure connection is mysqli_ and not mysql_
$query = mysqli_query($conn,"SELECT id, email FROM your_table WHERE id = 1");
while($row = mysqli_fetch_assoc($query)){
$email = $row['email'];
}
$text = $email;
// reverse string
//$text = strrev($text);
$textLength = strlen($text);
$textHeight = 10;
// create image handle
$image = ImageCreate($textLength*($textHeight-1),20);
// set colours
$backgroundColour = ImageColorAllocate($image,255,255,255); // white
$textColour = ImageColorAllocate($image,0,0,0); // black
// set text
ImageString($image,$textHeight,0,0,$text,$textColour);
// set correct header
header('Content-type: image/png');
// create image
ImagePNG($image);
对于添加的样式,您可以为图像设置CSS类:
<img src="image_generator_file.php" class="pad">
CSS:
.pad {
padding-top:3px;
padding-bottom:2px;
padding-left:5px;
padding-right:5px;
background:#ffffff;
}