Hallo Leute,
stehe auf dem Schlauch, vielleicht hat einer von Euch einen Tipp für mich:
- aus einer Anwendung heraus (flash) wird ein bild generiert, dieses wird auf dem Server gespeichert, in einem Browserfenster ausgegeben und der Admin erhät eine email dass ein neues Bild (jpg) gespeichert wurde.
Klappt soweit;
Mein Problem: ist jemand ungeduldig und und lädt die Seite neu in der das Bild erscheinen soll immer wieder werden auch ständig neue emails abgesandt. das ist natürlich schlecht ..
ich habe es aber nicht hinbekommen das Skript so umzustellen das lediglich das Bild in einem Fenster aufgeht, ohne das skript ...
Bin um jeden Hinweis dankbar!
Grüße
Wicky
mein code:
stehe auf dem Schlauch, vielleicht hat einer von Euch einen Tipp für mich:
- aus einer Anwendung heraus (flash) wird ein bild generiert, dieses wird auf dem Server gespeichert, in einem Browserfenster ausgegeben und der Admin erhät eine email dass ein neues Bild (jpg) gespeichert wurde.
Klappt soweit;
Mein Problem: ist jemand ungeduldig und und lädt die Seite neu in der das Bild erscheinen soll immer wieder werden auch ständig neue emails abgesandt. das ist natürlich schlecht ..
ich habe es aber nicht hinbekommen das Skript so umzustellen das lediglich das Bild in einem Fenster aufgeht, ohne das skript ...
Bin um jeden Hinweis dankbar!
Grüße
Wicky
mein code:
PHP-Code:
<?php
//-->Bilddaten werden eingelesen und verarbeitet
error_reporting(0);
/**
* Get the width and height of the destination image
* from the POST variables and convert them into
* integer values
*/
$w = (int)$_POST['width'];
$h = (int)$_POST['height'];
// create the image with desired width and height
$img = imagecreatetruecolor($w, $h);
// now fill the image with blank color
// do you remember i wont pass the 0xFFFFFF pixels
// from flash?
imagefill($img, 0, 0, 0xFFFFFF);
$rows = 0;
$cols = 0;
// now process every POST variable which
// contains a pixel color
for($rows = 0; $rows < $h; $rows++){
// convert the string into an array of n elements
$c_row = explode(",", $_POST['px' . $rows]);
for($cols = 0; $cols < $w; $cols++){
// get the single pixel color value
$value = $c_row[$cols];
// if value is not empty (empty values are the blank pixels)
if($value != ""){
// get the hexadecimal string (must be 6 chars length)
// so add the missing chars if needed
$hex = $value;
while(strlen($hex) < 6){
$hex = "0" . $hex;
}
// convert value from HEX to RGB
$r = hexdec(substr($hex, 0, 2));
$g = hexdec(substr($hex, 2, 2));
$b = hexdec(substr($hex, 4, 2));
// allocate the new color
// N.B. teorically if a color was already allocated
// we dont need to allocate another time
// but this is only an example
$test = imagecolorallocate($img, $r, $g, $b);
// and paste that color into the image
// at the correct position
imagesetpixel($img, $cols, $rows, $test);
}
}
}
$bname1 = $_POST[bildname];
// print out the correct header to the browser
header("Content-type:image/jpeg");
// display the image
$bname = "pfad zum Ordner".$bname1.".jpg";
$infoname = $bname1.".jpg";
imagejpeg($img, $bname, 70);
header("Content-type:image/jpeg");
imagejpeg($img, "", 70);
$_POST[adminaddress] = "admin-email";
mail( "$_POST[adminaddress]",
"Neues Bild",
"Es wurde ein neues Bild durch die Anwendung XYZ auf dem Server gespeichert.
Name: $infoname
",
"FROM:$_POST[adminaddress]");
?>
Kommentar