flärbretli
Mitglied
ich mache gerade eine flashgallery mit upload:
aus der swf wird via fileReference ein bild auf den server geladen, gleichzeitig werden noch variabeln an das php script geschickt die dann in die datenbank geschrieben werden.
alles funktioniert nur komischerweise wird das phpscript immer zweimal ausgeführt dh:
es werden 2 einträge in die datenbank geschrieben ein debugmail wird zweimal versendet usw
ich hab keine ahnung woran das liegt, hat jemand eine idee?
actionscript:
php:
aus der swf wird via fileReference ein bild auf den server geladen, gleichzeitig werden noch variabeln an das php script geschickt die dann in die datenbank geschrieben werden.
alles funktioniert nur komischerweise wird das phpscript immer zweimal ausgeführt dh:
es werden 2 einträge in die datenbank geschrieben ein debugmail wird zweimal versendet usw
ich hab keine ahnung woran das liegt, hat jemand eine idee?
actionscript:
PHP:
System.security.allowDomain("http://www.hyperwerk.ch/miru");
import flash.net.FileReference;
var picUpload:Object = new Object();
// Die Funktion selbst
function uploadPictures():Void {
picUpload.onSelect = function(selectedFile:FileReference):Void {
selectedFile.upload("http://www.hyperwerk.ch/miru/mf/load.php?x_pos="+xpos+"&y_pos="+ypos);
}
picUpload.onOpen = function(selectedFile:FileReference):Void {
trace(selectedFile.name);
}
picUpload.onComplete = function(selectedFile:FileReference):Void {
trace(selectedFile.name + " hochgeladen");
}
var Bilddatei:FileReference = new FileReference();
Bilddatei.addListener(picUpload);
Bilddatei.browse([{description: "Image Files", extension: "*.jpg"}]);
};
function onMouseDown (){
xpos = _xmouse;
ypos = _ymouse;
uploadPictures();
}
PHP:
<?php
$xpos = $_GET['x_pos'];
$ypos = $_GET['y_pos'];
require_once('connect.php');
$query = "SELECT * FROM gal_pics ORDER BY id DESC;";
$res = mysql_query($query);
$letzter_datensatz = mysql_fetch_array($res);
$letzte_id = $letzter_datensatz["id"];
$name = ($letzte_id +1);
$extension = '.jpg';
$image_name = $name . $extension;
$path = 'pics/' .$image_name;
$t_path = 'pics/thumbs/t_' .$image_name;
//bildergrössen
$thumb_scale = 100;
$image_width = 400;
$image_height = 300;
$query = "INSERT INTO gal_pics (x, y, date) VALUES ('$xpos', '$ypos', NOW())";
@mysql_query($query);
//move
move_uploaded_file($_FILES['Filedata']['tmp_name'], $path);
chmod($path,0777);
//thumbs
$imagesize = getimagesize($path);
$orig_width = $imagesize[0];
$orig_height = $imagesize[1];
$switch =0;
$new_width = $thumb_scale;
$new_height = $new_width / ($orig_width / $orig_height);
$imageBorg = @imagecreatefromjpeg($path);
$imageBfin = @imagecreatetruecolor($new_width,$new_height);
@imagecopyresized($imageBfin,$imageBorg,"0","0","0","0",$new_width,$new_height,$imagesize[0],$imagesize[1]);
@imagejpeg($imageBfin,$t_path,"80");
chmod($t_path,0777);
$query = "UPDATE gal_pics SET t_height='$new_height' WHERE id='$name'";
@mysql_query($query);
//scale original bild wenn zu gross
if($orig_height>$image_height or $orig_width>$image_width){
if (($orig_width / $orig_height) < 1) {
$new_height = $image_height;
$new_width = $new_height / ($orig_height / $orig_width);
}else{
$new_width = $image_width;
$new_height = $new_width / ($orig_width / $orig_height);
}
$imageBorg = @imagecreatefromjpeg($path);
$imageBfin = @imagecreatetruecolor($new_width,$new_height);
@imagecopyresized($imageBfin,$imageBorg,"0","0","0","0",$new_width,$new_height,$imagesize[0],$imagesize[1]);
@imagejpeg($imageBfin,$path,"80");
$query = "UPDATE gal_pics SET width='$new_width', height='$new_height' WHERE id='$name'";
@mysql_query($query);
}else{
$query = "UPDATE gal_pics SET width='$orig_width', height='$orig_height' WHERE id='$name'";
@mysql_query($query);
}
?>