Passing PHP variables from one page to another
Posted on
16th Feb 2014 07:03 pm by
admin
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!
No comments posted yet
Your Answer:
Login to answer
165
32
Other forums
Sending CC Info by email
I am a little bit less knowledgable in the security area as most developers and I know I have a lot
Hyperlink is adding an extra gap to variable
Hi, here's my problem..
I have a php generated page with a hyperlink which opens in a new win
I am stumped
OK. Here is what I am trying to do. I have the conditions set, and if the conditions are met, I want
output_buffering so rewrite
I'm planning to rewrite some of my scripts so they don't have to use output buffering to accomplish
date("now") prints out wrong date ?
Hi Guys
Anyone know why and how I can fix it ?
Strange PHP/mySQL error ... am I just tired?
Code: <?
## CONNECT TO DB FUNCTION!
function ConnectTo($db2con)
{
$hostNam
PHP Multiples of 2, Show posts...not working (wordpress)
I have been using this code to show div.example with 6 li columns inside it, each li is a post with
Captcha problem users just refresh and it will let them auto submit again
Users will just re submit and not have to enter the new captcha.. ? Lol but if i refresh the page, t
Undefined Variable: PHP_SELF, pls help
Hi,
Im a newbie on PHP / MySQL programming and Im running a script to search one field on my
FFmpeg Images 2 Video conversion problem ??
I got folder full of images , number of images = 600 , I want to make a video which plays one image