?
Solved

simple php question, how do i pass value from a function into another?

Posted on 2007-11-29
12
Medium Priority
?
275 Views
Last Modified: 2008-02-01
This is in my index.php
<? include("body.php"); body("home"); ?>

As you can see its calling a function called "body" from a file called body.php
This is the body.php...
<? function body($pageaddress){
?>
     <? include("\"" ?> <? .$pageaddress. ?> <? .php"\""); ?>
<? } ?>

Can anyone point out where i've gone wrong? I'm very new to php programming.
0
Comment
Question by:Antonio King
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 2
  • 2
  • +2
12 Comments
 
LVL 4

Expert Comment

by:simonkin
ID: 20375010
Try this...
<?php
 
	function body($pageaddress) {
	
		include("\\" . $pageadress . ".php");
	
	}
	
?>

Open in new window

0
 
LVL 17

Expert Comment

by:nplib
ID: 20375013
<?php
function body($pageaddress){
     include($pageaddress.".php"); ?>
}
?>
0
 
LVL 4

Expert Comment

by:simonkin
ID: 20375018
Sorry...


<?php
 
	function body($pageaddress) {
	
		include($pageadress . ".php");
	
	}
	
?>

Open in new window

0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Expert Comment

by:bestondoa
ID: 20375024
Hi Alan,

Try this instead of your current body function:

<?php function body($pageaddress){
      
      include("\.".$pageaddress.".php");
}
?>
0
 
LVL 17

Expert Comment

by:nplib
ID: 20375025
unless you want the slashes, but in a url slashes go the other way.
and if you have a slash at the beginning of your address it symbolizes the root of the website
0
 
LVL 17

Expert Comment

by:nplib
ID: 20375032
such as
<?php
function body($pageaddress){
     include("/".$pageaddress.".php"); ?>
}
?>

Open in new window

0
 

Author Comment

by:Antonio King
ID: 20375062
sorry should make things a little clearer...
the function would actually look more like this...

<? function body($pageaddress){
?>
<table>
   <tr>
      <td>
         <? include("\"" ?> <? .$pageaddress. ?> <? .php"\""); ?>
      </td>
   </tr>
</table>
<? } ?>
0
 
LVL 17

Expert Comment

by:nplib
ID: 20375090
do this

<?php
function body($pageaddress){
 $html .= "<table>";
 $html .= "<tr>";
 $html .= "<td>";
 include("/".$pageaddress.".php");
 $html .= "</td>";
 $html .= "</tr>";
 $html .= "</table>";
 return $html;
}
?>
 
 
then to use it
 
echo body("home");

Open in new window

0
 

Author Comment

by:Antonio King
ID: 20375139
include(/.php) [function.include]: failed to open stream: No such file or directory in
0
 
LVL 17

Accepted Solution

by:
nplib earned 1600 total points
ID: 20375179
add this just to see if the variable is being passed
<?php
function body($pageaddress){
 echo $pageaddress;
 $html .= "<table>";
 $html .= "<tr>";
 $html .= "<td>";
 include("/".$pageaddress.".php");
 $html .= "</td>";
 $html .= "</tr>";
 $html .= "</table>";
 return $html;
}
?>

Open in new window

0
 
LVL 20

Assisted Solution

by:steelseth12
steelseth12 earned 400 total points
ID: 20375386
That will not work as expected because include will execute as soon as it is called you need something a bit more complex.
function body($pageaddress){
 ob_start();
 include($pageaddress.".php");
 $inc = ob_get_contents();
 ob_end_clean();
 $html .= "<table>";
 $html .= "<tr>";
 $html .= "<td>";
 $html .= $inc;
 $html .= "</td>";
 $html .= "</tr>";
 $html .= "</table>";
 return $html;
}

Open in new window

0
 
LVL 17

Expert Comment

by:nplib
ID: 20375819
yes your right.
0

Featured Post

Want to be a Web Developer? Get Certified Today!

Enroll in the Certified Web Development Professional course package to learn HTML, Javascript, and PHP. Build a solid foundation to work toward your dream job!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Things That Drive Us Nuts Have you noticed the use of the reCaptcha feature at EE and other web sites?  It wants you to read and retype something that looks like this. Insanity!  It's not EE's fault - that's just the way reCaptcha works.  But it i…
There are times when I have encountered the need to decompress a response from a PHP request. This is how it's done, but you must have control of the request and you can set the Accept-Encoding header.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …
Suggested Courses

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question