Jump to content

header already sent, can't redirect


BrianM

Recommended Posts

<?php
function report_create() {
	echo("<form action=\"".$_SERVER['PHP_SELF']."?table=".$_GET['table']."&project_name=".$_GET['project_name']."&report=create\" method=\"post\">");
	echo("<b><font size=\"2px\" face=\"Verdana\">Create report: </font></b><input type=\"text\" name=\"report_\" /> <input type=\"submit\" name=\"report_create\" value=\"Create\" />");
	echo("</form>");
	}
if (isset($_POST['report_create'])) {
	mysql_connect('localhost', 'brian', '') or die(mysql_error());
	mysql_select_db('reports') or die(mysql_error());

	mysql_query("INSERT INTO `$table` (date, report) VALUES ('".date("m-d-y")."', '".$_POST['report_']."')");
}
?>

 

I want to be able to redirect to another page after that insert query is executed, but I can't use header() .. so is there any other way I can redirect after mysql_query is executed?

Link to comment
https://forums.phpfreaks.com/topic/109842-header-already-sent-cant-redirect/
Share on other sites

You might check your query, in MySQL or phpMyAdmin, with the variables replaced to determine if the query syntax is perfect. If MySQL returns an error before the redirect, then that would cause the header() error you are experiencing because that error is output HTML.

Well I'm looking for an alternate because my script is telling me I've already sent header information so I can't use the header() function there.

 

Will what you provided work as an alternative?

 

well i did used it before... and it works! the idea of havin exit right away is so that the following code will not get executed, instead, the script will run right away.

 

you might check out also the others' suggestions and see which suits you best. :)

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.