Sorry to post this again, but is there anyone that could suggest something?
Hi All,
I am useing an upload php script in a popup window, which is all working fine. The bit that I am strugling with is to pass the image name through a java scrip function which closes the popup and passes the variable to the parent window. I can get the java bit working fine if I use a enetered value, but cant seem to get it to pass the variable image name. The code is below, any help would be appreaciated.
<head>
<p>
<script language="JavaScript" type="text/JavaScript">
function test()
{
var img = "<? echo \"$img_name\"?>" ;
window.opener.document.forms[0].test.value = img;
window.close();
}
</script>
<title>Upload</title>
</head>
<?php
require("fileupload-class.php");
#--------------------------------#
Variables
#--------------------------------#
// The path to the directory where you want the
// uploaded files to be saved. This MUST end with a
// trailing slash unless you use $path = ""; to
// upload to the current directory. Whatever directory
// you choose, please chmod 777 that directory.
$path = "uploads/";
// The name of the file field in your form.
$upload_file_name = "userfile";
// ACCEPT mode - if you only want to accept
// a certain type of file.
// possible file types that PHP recognizes includes:
//
// OPTIONS INCLUDE:
// text/plain
// image/gif
// image/jpeg
// image/png
// Accept ONLY gifs's
#$acceptable_file_types = "image/gifs";
// Accept GIF and JPEG files
#$acceptable_file_types = "image/gif|image/jpeg|image/pjpeg";
// Accept ALL files
#$acceptable_file_types = "";
// If no extension is supplied, and the browser or PHP
// can not figure out what type of file it is, you can
// add a default extension - like ".jpg" or ".txt"
$default_extension = "";
// MODE: if your are attempting to upload
// a file with the same name as another file in the
// $path directory
//
// OPTIONS:
// 1 = overwrite mode
// 2 = create new with incremental extention
// 3 = do nothing if exists, highest protection
$mode = 2;
#--------------------------------#
PHP
#--------------------------------#
if (isset($_REQUEST['submitted'])) {
/*
A simpler way of handling the submitted upload form
might look like this:
$my_uploader = new uploader('en'); // errors in English
$my_uploader->max_filesize(30000);
$my_uploader->max_image_size(800, 800);
$my_uploader->upload('userfile', 'image/gif', '.gif');
$my_uploader->save_file('uploads/', 2);
if ($my_uploader->error) {
print($my_uploader->error . "<br><br>\n");
} else {
print("Thanks for uploading " . $my_uploader->file['name'] . "<br><br>\n");
}
*/
// Create a new instance of the class
$my_uploader = new uploader($_POST['language']); // for error messages in french, try: uploader('fr');
// OPTIONAL: set the max filesize of uploadable files in bytes
$my_uploader->max_filesize(15000); // 15 kb
// OPTIONAL: if you're uploading images, you can set the max pixel dimensions
$my_uploader->max_image_size(800, 800); // max_image_size($width, $height)
// UPLOAD the file
if ($my_uploader->upload($upload_file_name, $acceptable_file_types, $default_extension)) {
$my_uploader->save_file($path, $mode);
}
if ($my_uploader->error) {
echo $my_uploader->error . "<br><br>\n";
} else {
// Successful upload!
$img_name = $my_uploader->file['name'];
print($my_uploader->file['name'] . " was successfully uploaded! <a href=\"" . "/pic.php" . "\">Try Again</a><br>");
// Print all the array details...
//print_r($my_uploader->file);
// ...or print the file
if(stristr($my_uploader->file['type'], "image")) {
echo "<img src=\"" . $path . $my_uploader->file['name'] . "\" border=\"0\" alt=\"\">";
} else {
$fp = fopen($path . $my_uploader->file['name'], "r");
while(!feof($fp)) {
$line = fgets($fp, 255);
echo $line;
}
if ($fp) { fclose($fp); }
}
}
}
#--------------------------------#
HTML FORM
#--------------------------------#
?>
<form action="<?= $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data" name="form" id="form" onSubmit="test();">
<input type="hidden" name="submitted" value="true">
Upload this file:<br>
<input name="<?= $upload_file_name; ?>" type="file">
<br>
<br>
<br>
<br>
<input type="submit" value="Upload File">
</form>
<hr>
<?php
if (isset($acceptable_file_types) && trim($acceptable_file_types)) {
print("This form only accepts <b>" . str_replace("|", " or ", $acceptable_file_types) . "</b> files\n");
}
?>
</p>
<p> </p>
</body>
</html>