4

I have the following script that runs when a user clicks a link that views all their listings:

<?php
if (!isset($_GET['review'])) {
//This page is called when users choose to view all their reviews
//STEP 1: find all the reviews created by this user. 

$userReviews = Reviews::findUserReviews($_SESSION['user_id']);
//STEP 2: run a for each that will spit out a list of each review, with a url indicating the review id selected ?>

<ul>
<?php foreach ($userReviews as $userReview): ?>
    <li><a href="<?php echo $siteURL; ?>/index.php?public=6&amp;profile=5&amp;review=<?php echo $userReview->id; ?>"><?php echo $userReview->street; ?></a></li>
<?php endforeach; ?>
</ul>
<?php } else {
echo "Test Echo";
}
?>

It is accessed from an include on another page, the include works, I do not get a PHP error telling me the file doesn't exist.

Furthermore, the server runs the PHP code and outputs it to the page, but the browser won't show it, i just get a blank area where that file is supposed to display.

When I click on view source though, it shows the HTML is there, and output as a result of the PHP:

<ul>
<li><a href="http://www.mytesturl.com/index.php?public=6&amp;profile=5&amp;review=34"></a></li>
</ul>

I'm at a loss here, the file is obviously working and outputting correctly, but no browsers will show it?

As a test, I tried adding some random text to the page at the bottom of the script after the final closing ?> tag, and the browser does show that, but not the php produced code, OR the tag just under the "STEP 2: etc....." comment.

I've changed the file name, I've tried changing the "isset" conditions on the page that calls it, I've even changed this file's permissions as a last resort, to no avail.

Anyone have any suggestions?

Apache version 2.2.22 PHP version 5.3.10

Thanks everyone

6
  • 2
    K wow, I just solved on my own. I made the issue more complicated than it was, it didn't display anything because there was no value being outputted for the <a> tag! face palm Thanks anyways everyone. Commented Apr 5, 2012 at 12:09
  • 1
    Please post that as an answer and accept it when you are able to (or delete the question) to keep the site tidy ;-) Commented Apr 5, 2012 at 12:13
  • would it be better to post it as an answer to help others? Also, how do i do that lol Commented Apr 5, 2012 at 12:19
  • @DavidMorin just answer like you would any other question, or hit delete under the question... Commented Apr 5, 2012 at 12:21
  • 2
    @DavidMorin You will have a time limit since you are a fairly new user, towards the bottom of the page there should be a message telling you how long you have to wait before you are able to answer your own question, I think it is two hours, just come back and answer it then. Commented Apr 5, 2012 at 12:26

1 Answer 1

3

There's no content to show.

Try putting some test content between <a> and </a>.

In other words, $userReview->street appears to be empty and is producing no output. The rest of the markup does not render anything, just as <p></p> does not result in anything on the screen.

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks yeah, that was the answer, I actually had figured it out about 20 seconds after I posted it (see comments above). But because I am new it wouldn't let me answer my own question for 8 hours. I won't need to know though thanks for answering!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.