Solved

PHP Header(location: mypage.php) directive causes page to crash

Posted on 2014-02-04
9
399 Views
Last Modified: 2014-02-04
I have a corporate Intranet page that asks the user to select a bunch of data to modify by selecting dropdown items and checking off boxes.
The selection is all done in a form.
Upon clicking 'Submit', the page calls itself as an action and validates that at least one checkbox has been checked.  If so, I am okay to go to the next page.
The page works well for data validation, and if I uncomment the echo statements I can see the session varibales that are being set as a a result of data selection.
If i uncomment the header ("location: ....) line, the page crashes.

Any idea what is going on?

    //ini_set('error_reporting', E_ALL);                                      
    session_start();
    include '../Include_Files/ServerSide/connect_qisuser.inc';
    $err = "";
    $shortItems = '';
    $lines_total = count($_SESSION['model_array']);
    
    // If user has submitted form
    if(isset($HTTP_POST_VARS["Submit"])) {
        //$lines_total = count($_SESSION['model_array']);
        //echo $lines_total . "<br />";
        for ($i = 0; $i <= $lines_total; $i++) {
            if (isset($HTTP_POST_VARS["check".$i])) {
                if ($shortItems === '') {
                    $shortItems = $HTTP_POST_VARS["check".$i];
                    $newModelArray = $_SESSION['model_array'][$i];
                }
                else {
                    $shortItems .= "|" . $HTTP_POST_VARS["check".$i];
                    $newModelArray .= "|" . $_SESSION['model_array'][$i];
                }
            }
        }
        
        //echo "<br /><br /><br />";
        //print_r ($shortItems);
        //echo "<br />";
        //print_r ($newModelArray);
        //echo "<br />";
        
        
        if ($shortItems === '') {
            $err = "<br /><br />You must select at least one item to update.";
        }
        
        else {
            $sels = '';
            for ($i=1;$i<21;$i++) {
                if ($sels === '') {
                    $sels = $HTTP_POST_VARS["sel".$i];
                }
                else {
                    $sels .= "|" . $HTTP_POST_VARS["sel".$i];
                }
            }
            
            $_SESSION['shortItems'] = $shortItems;
            $_SESSION['newModelArray'] = $newModelArray;
            $_SESSION['sels'] = $sels;
            //echo "<br /><br />" . $_SESSION['shortItems'] . "<br />";
            //echo $_SESSION['newModelArray'] . "<br />";
            //echo $_SESSION['sels'] . "<br />";
            //header("Location: update20fields.php");
        }        
    }

Open in new window

0
Comment
Question by:dimmergeek
  • 4
  • 3
  • 2
9 Comments
 
LVL 30

Expert Comment

by:Marco Gasi
Comment Utility
What you mean saying 'the page crashes'? What exactly happens?
0
 
LVL 108

Expert Comment

by:Ray Paseur
Comment Utility
"Crashes" means what, exactly?
0
 
LVL 7

Author Comment

by:dimmergeek
Comment Utility
if I uncomment the line:

header("Location: update20fields.php");

Open in new window


on line 53 above I get this:

Screen shot
0
 
LVL 108

Expert Comment

by:Ray Paseur
Comment Utility
Is there any browser output at all from the script?
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 7

Author Comment

by:dimmergeek
Comment Utility
If I leave the line in, the page reloads with no issues.
0
 
LVL 7

Author Comment

by:dimmergeek
Comment Utility
There is no output sent to the screen upon POSTing the form.
The script just processes form elements, assigns session varibales and is supposed to redirect to the next page for further processing.
0
 
LVL 30

Accepted Solution

by:
Marco Gasi earned 500 total points
Comment Utility
Could the problem be in update20fields.php? Can you post the code of that page, please?
0
 
LVL 7

Author Comment

by:dimmergeek
Comment Utility
THAT'S IT!

What was throwing me off was that when I right-clicked on the error page and checked the properties it showed be the address of the calling page, not the destination page!

Thank you!
0
 
LVL 30

Expert Comment

by:Marco Gasi
Comment Utility
Glad to help you!
Cheers
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

Suggested Solutions

This article will explain how to display the first page of your Microsoft Word documents (e.g. .doc, .docx, etc...) as images in a web page programatically. I have scoured the web on a way to do this unsuccessfully. The goal is to produce something …
Part of the Global Positioning System A geocode (https://developers.google.com/maps/documentation/geocoding/) is the major subset of a GPS coordinate (http://en.wikipedia.org/wiki/Global_Positioning_System), the other parts being the altitude and t…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
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 …

762 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

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now