Hello-
I'm having trouble figuring out how to transport a variable from one php file to another. Specifically, the name of an image, to be used as a subject in a form mail. I don't even really have the proper vocabulary to describe this, so I'll just try to show my code.
Here's the test website in question:
http://www.grymttr.com/raj/RajTest/portfolio/
When you go to the "portfolio" page, and click on the album (only one at the moment). If you see a picture you are interested in, you click on it, which triggers the file "popup2.php"
Quote<?php error_reporting(0); if (isset($_GET['dl'])) {
$file = str_replace('/', DIRECTORY_SEPARATOR, $_GET['src']);
if (strpos($file, '..') !== false) {
exit;
}
$name = basename($file);
$info = pathinfo($name);
$ext = $info['extension'];
$full_path = dirname(__FILE__) . $file;
header("Content-Disposition: attachment; filename=$name");
switch(strtolower($ext)) {
case 'jpg':
$ct = 'image/jpeg';
break;
case 'gif':
$ct = 'image/gif';
break;
case 'png':
$ct = 'image/png';
break;
default:
$ct = 'application/octet-stream';
break;
}
header('Content-type: ' . $ct);
header('Content-length: ' . filesize($full_path));
$disabled_functions = explode(',', ini_get('disable_functions'));
if (is_callable('readfile') && !in_array('readfile', $disabled_functions)) {
readfile($full_path);
} else {
die(file_get_contents($full_path));
}
} else { ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title><?php echo(strip_tags($_GET['title'])); ?></title>
<style type="text/css" media="screen">
/* <![CDATA[ */
* { margin:0; padding:0; overflow:auto;}
/* ]]> */
</style>
<script type="text/javascript" charset="utf-8">
function isIE() {
return /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);
}
function resize(img_w, img_h) {
if (isIE()) {
var h = document.documentElement.clientHeight;
} else {
var h = window.innerHeight;
}
var w = document.body.clientWidth;
var adj_w = img_w - w;
var adj_h = img_h - h;
window.resizeBy(adj_w, adj_h);
window.focus();
}
</script>
<link href="mail.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?php
if (strpos($_GET['src'], 'p.php?a=') !== false) {
$src = $_GET['src'];
$bits = explode('?a=', $src);
$src = $bits[0] . '?a=' . urlencode($bits[1]);
} else {
$src = strip_tags($_GET['src']);
}
?><div id="container">
<img class="image" src="<?php echo($src); ?>" alt="<?php echo(strip_tags($_GET['title'])); ?>" />
<div id="form">
<form method="POST" action="mailer.php">
Subject: "<?php echo(strip_tags($_GET['title'])); ?>"
Name:
<input type="text" name="name" size="29">
E-Mail:
<input type="text" name="email" size="29">
<input type="checkbox" name="check[]" value="print"> print
<input type="checkbox" name="check[]" value="matte"> matte
<input type="checkbox" name="check[]" value="frame"> frame
Message:
<textarea rows="7" name="message" cols="33"></textarea>
<input type="submit" value="Submit" name="submit">
</form>
</div></div>
</body>
</html><?php } ?>
and then I have "mailer.php" which actually sends the mail with the variables entered in the form above. The lines highlighted in green grab the "title" of the image, like "GLS002.jpg", which is what I want to be the subject of the e-mail.
Quote
<?php
if(isset($_POST['submit'])) {
$to = "greg@grymttr.com";
$subject = $_GET['title'];
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];
foreach($_POST['check'] as $value) {
$check_msg .= "Checked: $valuenn";
}
$body = "From: $name_fieldnn E-Mail: $email_fieldnn Subject: $subjectnn Message:nn $messagenn $check_msg";
echo "Data has been submitted to $to!";
mail($to, $subject, $body);
} else {
echo "blarg!";
}
?>
I know the line in red is wrong, but I don't know how to get the title of the image from "popup2.php". If you go to the site and click on an image during the slideshow, you will see the pop-up open, with the title of the window and the "Subject: ....." line filled out correctly, but I can't figure out how to get that variable into the mailer.php file as the subject of the e-mail that gets sent. It's sort of critical, as that's the identification of the image in question. Help!
need good snippet manager
Hi. as i am coding and learning more, it is becoming difficult to manage code snippets. how you manage your code snippets?please list some good snippet managers.i tried snippely but it does not have
How to write on database when a link is clicked?
Hi,
cURL proxy
Okay here is the thing... i know how to add proxysCode: curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);curl_setopt($ch, CURLOPT_PROXY,"[i][b]PROXYHERE[/b][/i]");Here are my questions..
Parse Error
Hi Guys,I have a function in my class which returns a string link variable. The problem is it keeps giving me a parse error. See code below followed by error message:Code: function
restricting another login once you logout
Hello,how can I restrict a page from login authenticating against info in a MySQL DB for a second time? Right now a login check against username and password in a MySQL table and allows access against
How to file_get_contents when login required?
Hello!I am trying to read data from a page that you have to be logged into to view, I am trying to use file_get_contents to do this, I have read that I need to use cURL, Is that true?Also, as Another
Echo multiple lines of html code
Hi guys,I would like to know if there is a way to echo multiple lines of html codes. I intend to echo a form if a variable is set and nothing if it is not set. And right now, I echo each line of html
Find current logon time
Hi,
PHP mail() returns true but doesn't work
First off I apologize if this is a newbie question, and I generally don't like asking questions that have already been asked 1,000,000 times, but I've searched far and wide and cannot find a solution
mySQL and PHP search
Hello,I am trying to code a project and ran into a brick wall with one of my pages. I am pretty new at php/mySQL and can not figure this out. Now I know that you are not going to sit there and type my