Fergus Barker
Fergus Barker

Reputation: 1342

PHP/HTML/Javascript: Automatically leave page?

I've written a some PHP that interacts with a SQL database and is just around as an intermediate between two pages.

I want a user to automatically be forced to leave that page and move to another (or even a back to previous page function)

What is the easiest way to do this? I'm happy to use PHP, HTML, or JavaScript to do it.

Upvotes: 3

Views: 432

Answers (7)

Ryan
Ryan

Reputation: 1888

In PHP I use the following code at the end of a script to move the user to the next page

<?php
     // MYSQL SECTION
     // PHP SECTION
     header('Location: /next.php');
?>

Just make sure you haven't passed any actual HTML in the page before the header code or the script will break with an error that headers have already been sent.

Upvotes: 3

Balanivash
Balanivash

Reputation: 6867

To "move" to a page in PHP you can use the header function.

Ex: header('Location: http://www.example.com/');

Upvotes: 3

laradev
laradev

Reputation: 918

from PHP you can call JavaScript by this way

     echo "<script>document.location.href = \"yourpage.php\"</script>";

This code wont bother if there any white space or html content before the line.

Upvotes: 1

Abhishek Bhatia
Abhishek Bhatia

Reputation: 716

in php

<?php 
  //the user must leave now
  echo"<meta http-equiv='refresh' content='".$time_in_seconds."; URL=abc.com'>";//will move after the time specified,,0 can be specified to move immediately
  exit();
?>

in js

window.location="abc.com";//will move immediately,you can time using setTimeout function

Upvotes: 0

Hameedullah Khan
Hameedullah Khan

Reputation: 346

If you script just interacts with SQL database and does not output anything just simply send a redirect header.

<?php

// sql interaction code goes here.

header('Location: /uri/to/secondpage.php');
exit;
?>

Upvotes: 2

rahularyansharma
rahularyansharma

Reputation: 10765

you can use the php header function

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

with following example it would be more clear to you.

<html>
<?php
/* This will give an error. Note the output
 * above, which is before the header() call */
header('Location: http://www.example.com/');
?>

but there is some limitation with the header function in php

Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include(), or require(), functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.

Upvotes: 0

user806273
user806273

Reputation:

From php you can use the header() function to change the location:

header("Location: newpage.html");

Just be aware that if you're using header, you can't emit any html or whitespace before you make this call unless you're buffering output. Doing so will cause warnings to the effect that headers have already been sent (there is a way to work around this).

Upvotes: 4

Related Questions